最近在做上传图片、文件模块时,遇到一些问题,先总结如下:
上传文件目录的问题:
(1)request.getSession().getServletContext().getRealPath("");得到的是tomcat安装目录webapp下,对应工程的根目录。而此种方式在部署tomcat时,其上传的文件容易被覆盖丢失。
(2)为了避免上面的情况,我们可以在web.xml中指定目录,
<context-param>
<param-name>fileupload</param-name>
<param-value>E:/fileupload/</param-value>
</context-param>
在servlet中可以通过如下来获取位置:filepath=this.getServletConfig().getServletContext().getInitParameter("fileupload");
(3)在tomcat下建立虚拟虚拟目录:
修改server.xml,在</Host>标签上一行添加<Context path="/realty" docBase="E:\realty" />
2.上传图片为中文文件名时,浏览器端编码出现错误,不能读取问题:
在tomcat的server.xml文件下指定一下编码即可
<ConnectorconnectionTimeout="20000" port="8080"protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
转载于:https://blog.51cto.com/lindianli/1426419