前台JSP
后台代码
public String save(HttpServletRequest request, HttpServletResponse response) { try { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List<FileItem> items = upload.parseRequest(request); Iterator<FileItem> itr = items.iterator(); HttpSession session = request.getSession(); User user = (User) session.getAttribute("currentUser"); while (itr.hasNext()) { FileItem item = (FileItem) itr.next(); if (item.isFormField()) { String fieldName = item.getFieldName(); if ("nickName".equals(fieldName)) { user.setNickName(item.getString("utf-8")); } if ("mood".equals(fieldName)) { user.setMood(item.getString("utf-8")); } } else if (!"".equals(item.getName())) { String imageName = DateUtil.getCurrentDateStr(); // 存入数据的的数据,以及浏览器访问图片的映射地址 String serverDir = PropertiesUtil.getValue("serverDir"); // 图片真实的存放位置 String diskDir = PropertiesUtil.getValue("diskDir"); // 图片的后缀名 String subfix = item.getName().split("\\.")[1]; user.setImageName("http://localhost:8080"+serverDir + imageName + "." + subfix); item.write(new File(diskDir + imageName + "." + subfix)); } } int saveNums = this.userService.save(user); if (saveNums > 0) { session.setAttribute("currentUser", user); // 修改用户个人信息成功后,重定向到主页 return "toMainTemp"; } else { request.setAttribute("currentUser", user); request.setAttribute("error", "保存失败!"); request.setAttribute("mainPage", "/WEB-INF/jsp/user/edit.jsp"); return "mainTemp"; } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); request.setAttribute("currentUser", user); request.setAttribute("error", "保存失败!"); request.setAttribute("mainPage", "/WEB-INF/jsp/user/edit.jsp"); return "mainTemp"; } }
属性文件
serverDir=/uploadImages/ diskDir=E:/temp/
tomcat映射
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log" suffix=".txt"/> <Context path="/uploadImages" docBase="E:/temp/"/> <Context docBase="p3" path="/p3" reloadable="true" source="org.eclipse.jst.jee.server:p3"/></Host>
备案号:湘ICP备19000029号
Copyright © 2018-2019 javaxl晓码阁 版权所有