正在回答 回答被采纳积分+1

public class AddServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
// 创建磁盘文件项工厂类
DiskFileItemFactory factory = new DiskFileItemFactory();
// 创建一个核心解析类
ServletFileUpload fileUpload = new ServletFileUpload(factory);
List<FileItem> list = fileUpload.parseRequest(request);
Map<String, Object> foodMap = new HashMap<>();
// 遍历所有的文件项
for (FileItem fileItem : list) {
// 如果是普通表单项
if (fileItem.isFormField()) {
String name = fileItem.getFieldName();
String value = fileItem.getString("UTF-8");
System.out.println("name" + name + ",value" + value);
foodMap.put(name, value);
} else { // 如果不是普通表单项
// 获取存放文件的文件夹的路径
String path = this.getServletContext().getRealPath("/upload");
System.out.println("path" + path);
File parentFile = new File(path);
if (!parentFile.exists()) {
parentFile.mkdirs();
}
String uuidFileName = UploadUtils.getUUIDFileName(fileItem.getString());
System.out.println("uuidfilename : " + uuidFileName);
// 获取图片的路径
String realPath = path + "\\" + uuidFileName;
System.out.println("realPath" + realPath);
InputStream is = fileItem.getInputStream();
OutputStream os = new FileOutputStream(realPath);
int len = -1;
byte[] b = new byte[1024];
while ((len = is.read(b)) != -1) {
os.write(b, 0, b.length);
}
foodMap.put(fileItem.getName(), realPath);
}
}
System.out.println("菜品信息:" + foodMap.toString());
// 取出list,把map加入到这个list中
List<Map<String, Object>> foodList = (List) this.getServletContext().getAttribute("food_list");
foodList.add(foodMap);
System.out.println("添加的菜品信息:" + foodList.toString());
this.getServletContext().setAttribute("food_list", foodList);
// 添加成功跳转页面
// TODO
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
怎么还出现乱码?
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10204 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程




恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星