朋友你好,
我有以下代码将图像上传到我的WebApp文件夹WebContent - > images - > menuitemimg
private String doUploadFile(String menuItemName,Long menuItemId){
FacesContext facesContext = FacesContext.getCurrentInstance();
ExternalContext externalContext = facesContext.getExternalContext();
InputStream inputStream = null;
OutputStream out = null;
String imageName = null;
try{
String dirPath = externalContext.getRealPath(File.separator+"images"+File.separator+"menuitemimg");
File targetFolder = new File(dirPath);
targetFolder.mkdirs();
imageName = file.getFileName();
imageName = menuItemName+"_"+menuItemId+"."+FilenameUtils.getExtension(imageName);
inputStream = file.getInputstream();
out = new FileOutputStream(new File(targetFolder+File.separator+imageName));
int read = 0;
byte[] bytes = new byte[1024];
while ((read = inputStream.read(bytes)) != -1) {
out.write(bytes, 0, read);
}
inputStream.close();
out.flush();
out.close();
}catch(Exception e){
e.printStackTrace();
}
return imageName;
}
代码工作正常。但是当我重新启动服务器时,在menuitemimg文件夹中上传的图像就会消失。我不想将图像存储在光盘或数据库中。所以我想做什么。
提前致谢。
答案 0 :(得分:1)
我查看了你的代码,看来你正在将图像存储在项目文件夹本身中。 我建议您将图片上传到容器外的其他位置。