【发布时间】:2014-10-01 12:12:43
【问题描述】:
使用 request.getRealPath() 在 localhost 上正常工作的图像上传,但我们在服务器中使用的不是
工作,因为服务器找不到指定的路径..图像无法显示..我该如何解决这个问题.??
图片上传代码如下:
filePath =request.getRealPath("") + "\\img\\";
System.out.println(filePath);
String contentType = request.getContentType();
if ((contentType.indexOf("multipart/form-data") >= 0))
{
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List fileItems = upload.parseRequest(request);
// message= fileItems.get(2).toString();
Iterator i = fileItems.iterator();
while (i.hasNext()) {
FileItem fi = (FileItem) i.next();
if(fi.isFormField())
{
message=fi.getString();
System.out.println("message is : "+message);
bean.setEmp_id(Integer.parseInt(message));
}
if (!fi.isFormField()) {
String fieldName = fi.getFieldName();
System.out.println("field name"+fieldName);
fileName = fi.getName();
if (fileName.lastIndexOf("\\") >= 0) {
file = new File(filePath
+ fileName.substring(fileName
.lastIndexOf("\\")));
} else {
file = new File(filePath
+ fileName.substring(fileName
.lastIndexOf("\\") + 1));
}
fi.write(file);
【问题讨论】:
-
你能显示代码吗?以及您在本地和运行时获得的路径?
-
本地图片上传到以下路径:E:\CRM\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\CRM\img
-
我使用 org.apache.commons.fileupload 库进行图片上传
-
上传后检查文件是否保存在服务器中
-
图片未上传