Java MultipartConfig中的文件类型检查出错

Java MultipartConfig中的文件类型检查出错,java,servlets,Java,Servlets,我正在开发上传图片的代码。但这并不能正常工作。在我的servlet中,我将检查contenttype如果contexttype匹配到“image/jpeg”或“image/jpeg”文件将以其他方式写入,并显示错误消息 Part filePart = request.getPart("pho`to"); String str = filePart.getContentType(); if (str != "image/jpeg" && str != "image/jpg"

我正在开发上传图片的代码。但这并不能正常工作。在我的
servlet
中,我将检查
contenttype
如果
contexttype
匹配到
“image/jpeg”
“image/jpeg”
文件将以其他方式写入,并显示错误消息

 Part filePart = request.getPart("pho`to");
 String str = filePart.getContentType();

 if (str != "image/jpeg" && str != "image/jpg") {
     response.sendRedirect("uploadimage?action=errorinfiletype");
     return;
 }

User.updateImage(inputStream, uid);
response.sendRedirect("uploadimage?action=changed");
但是上面的代码总是显示错误消息。
我认为我的if条件有错误。在Java中,您不能使用
==
来比较字符串=操作员。您必须使用
equals()
方法,即

if (!"image/jpeg".equals(str) && !"image/jpg".equals(str)) {
    ...
}

您可以执行以下操作:

if (str==null || !str.matches("image/jp(e)?g") ) {
        response.sendRedirect("uploadimage?action=errorinfiletype");
        return;
}

您得到的错误是什么?编译时或运行时错误?没有错误。请始终进入IFG的正文,您对此的期望和关注是什么?如果str等于“image/jpeg”或“image/jpg”。然后更新图像,否则打印错误消息,而不是使用&&use | |。这里&&期望这两个条件都是真的。但是由于原始代码很混乱,所以不确定您想要实现什么。