我已将我的maven / spring项目上传到jelastic并使用以下内容保存图片:
ServletContext servletContext = request.getSession().getServletContext();
String absoluteFilesystemPath = servletContext.getRealPath("/");
byte[] fileData = file.getBytes();
String name=Trader.getImage();
if (fileData.length != 0) {
String fileName =login.getUserName()+".jpeg";
File f = new File(absoluteFilesystemPath+"\\img\\"+fileName);
FileOutputStream fileOutputStream = new FileOutputStream(fileName);
fileOutputStream.write(fileData);
fileOutputStream.close();
}
正在处理localhost图像保存在img文件夹中,而在服务器上它保存在绝对路径上,名称为“img / xyz.jpeg”
我想将其保存在
上myproject/img/
正在保存
myproject
答案 0 :(得分:0)
不是你的\错误的方式?我猜你的本地主机是Windows吗?
Jelastic是基于Linux的,因此文件系统路径包含/
而不是\
。也许试试
File(absoluteFilesystemPath+"/img/"+fileName);
修改:根据File.separator vs Slash in Paths,您可能希望使用File.separator
代替正确的平台独立性。