Java 将部分转换为字符串

Java 将部分转换为字符串,java,mysql,servlets,Java,Mysql,Servlets,任何帮助都是非常感谢的,因为我现在有我的最后一年的项目 文件名很奇怪,因为部分类中的toString()方法。该类使用打印jvm特定实例ID的对象类的默认实现 您的零件类实现可能具有返回文件名的公共方法。试试这个: Part part = request.getPart("file"); String fileName = part.toString(); 而不是: String fileName = part.getSubmittedFileName((); (可选)您可以通过各种方式获得

任何帮助都是非常感谢的,因为我现在有我的最后一年的项目

文件名很奇怪,因为
部分
类中的
toString()
方法。该类使用打印jvm特定实例ID的
对象
类的默认实现

您的零件类实现可能具有返回文件名的公共方法。试试这个:

Part part = request.getPart("file");
String fileName = part.toString();
而不是:

String fileName = part.getSubmittedFileName(();
(可选)您可以通过各种方式获得人类可读的
文件名
,在
请求
中引入附加属性


另外,考虑自己生成文件名,例如将随机
UUID
作为
文件名
。UUID文件名生成将有助于防止文件系统中的名称冲突(如果用户提交两个名称相同的不同文件怎么办?

我通过添加以下代码来解决此错误:

String fileName = part.toString();

但是,如果我想托管此web应用程序,如何更改路径,使其存储在web项目的web内容文件夹中。

仅添加与问题相关的代码。尽量使代码简短。我设法将其存储在web内容文件夹中,但是现在我想在浏览器上显示图像,那么我应该怎么做?阅读上面的链接,了解为什么不应该这样做,以及其中的链接如何为其提供服务。
String fileName = part.toString();
   private String extractFileName(Part part) {
    String contentDisp = part.getHeader("content-disposition");
    String[] items = contentDisp.split(";");
    for (String s : items) {
        if (s.trim().startsWith("filename")) {
            return s.substring(s.indexOf("=") + 2, s.length()-1);
        }
    }
    return "";
}