繁体   English   中英

Java EE Web应用程序文件创建

[英]Java EE web-application file creation

我正在用Java开发一个Web应用程序来控制我的股票并做一些其他事情。 我通过JSF组件上传文件。 该文件是图像。 无论如何,我的问题是,我希望将这些图像存储在Web应用程序的资源文件夹中。 更具体地说,在名为“ userUploads”的子文件夹中。 我创建了一个File对象,但是如何获得一个代表该路径的String?

如果您希望将文件存储在“ Web应用程序的资源文件夹”中,那么我猜您的意思是在“ webroot”中的一个名为“ resources”的文件夹。 虽然这实际上并不是最好的方法,但是可以通过使用ServletContext来实现:

ServletContext sc = httpRequest.getSession().getServletContext();

String path = sc.getPath("resources");

要么

File file = new File(sc.getPath("resources"))

就个人而言,建议您在网络应用目录的外部创建“上载”文件夹,以便在部署等过程中不将其替换。

“我创建了一个File对象,但是如何获得代表该路径的String?”

如果有File对象,则可以调用myFile.getAbsolutePath()以获取路径的字符串表示形式。

请执行下列操作:

  1. HttpServletRequest获取HttpSession
  2. HttpSession获取ServletContext
  3. 使用ServletContext.getRealPath()方法获取安装的绝对路径。 此方法的参数是相对于上下文根的路径。

这里是一个链接: ServletContext

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM