转发和重定向
Servlet API对象入参
静态资源文件的引入
异常处理
全局异常处理
日期格式转换错误
Spring表单标签
JSR 303 服务器端的数据校验
REST风格
文件上传
单文件上传
@RequestMapping(value = "/useradd.do") public String addUser( User user, @RequestParam(value = "a_idPicPath", required = false) MultipartFile file, HttpSession session, HttpServletRequest request) { String idPicPath = null; // 判断文件是否为空 if (!file.isEmpty()) { // 定义目标上传路径 String path = request.getSession().getServletContext() .getRealPath("statics" + File.separator + "uploadfiles"); String oldFileName = file.getOriginalFilename(); String suffix = FilenameUtils.getExtension(oldFileName); int filesize = 500000; if (file.getSize() > filesize) { request.setAttribute("uploadFileError", "* 上传大小不得超过500K"); return "useradd"; } else if (suffix.equalsIgnoreCase("jpg") || suffix.equalsIgnoreCase("jpeg") || suffix.equalsIgnoreCase("png") || suffix.equalsIgnoreCase("pneg")) { // 当前系统时间+随机数+"_Personal.jpg" String fileName = System.currentTimeMillis() + RandomUtils.nextInt(1000000) + "_Personal.jpg"; File targetFile = new File(path, fileName); if (!targetFile.exists()) { targetFile.mkdirs(); } try { file.transferTo(targetFile); } catch (Exception e) { e.printStackTrace(); request.setAttribute("uploadFileError", "* 上传失败"); return "useradd"; } idPicPath = path + File.separator + fileName; } else { request.setAttribute("uploadFileError", "* 上传图片格式不正确"); return "useradd"; } } user.setCreatedBy(((User) session.getAttribute(Constants.USER_SESSION)) .getId()); user.setCreationDate(new Date()); user.setIdPicPath(idPicPath); if (userService.add(user)) { return "redirect:/user/userlist.do"; } return "useradd"; }
多文件上传