首先,在服务器中的tomcat安装文件夹之外创建一个文件夹,例如
/opt/myuser/files/upload。然后,在属性文件或web.xml中将此路径配置为Servlet初始化配置,以使其可用于您拥有的任何Web应用程序。
如果使用属性文件:
file.upload.path = /opt/myuser/files/upload
如果是web.xml:
<servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>your.package.MyServlet</servlet-class> <init-param> <param-name>FILE_UPLOAD_PATH</param-name> <param-value>/opt/myuser/files/upload</param-value> </init-param></servlet>
或者,如果您使用的是Servlet 3.0规范,则可以使用
@WebInitParam注释配置init参数:
@WebServlet(name="MyServlet", urlPatterns = {"/MyServlet"}, initParams = { @WebInitParam(name = "FILE_UPLOAD_PATH", value = "/opt/myuser/files/upload") })public class MyServlet extends HttpServlet { private String fileUploadPath; public void init(ServletConfig config) { fileUploadPath = config.getInitParameter("FILE_UPLOAD_PATH"); } //use fileUploadPath accordingly public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException) { String fileName = ...; //retrieve it as you're doing it now //using File(String parent, String name) constructor //leave the JDK resolve the paths for you File uploadedFile = new File(fileUploadPath, fileName); //complete your work here... }}


