查阅了好多资料, 最后才发现原来只是添加一个方法就能解决的问题, 但是看了半天又没看明白, 只是知道这么写就能成功, 先记下来, 以后再研究吧, 在配置好springMVC的时候, 可以在前台的form表单传递一个实体类, 后台spring会自动将name传递来的属性自动装配给实体类的class, 但是有一点, 如果实体类中有一个属性是一个date型的, 就会报出400的错误, "客户端传递的参数中有语法错误", 最后在controller的那个控制类里面机上这样一段代码, 但不知道是什么意思
@org.springframework.web.bind.annotation.InitBinder public void InitBinder(/*HttpServletRequest request, */ServletRequestDataBinder binder) { // 不要删除下行注释!!! 将来"yyyy-MM-dd"将配置到properties文件中 // SimpleDateFormat dateFormat = new // SimpleDateFormat(getText("date.format", request.getLocale())); System.out.println("执行了InitBinder方法"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); dateFormat.setLenient(false); binder.registerCustomEditor(Date.class, null, new CustomDateEditor(dateFormat, true)); }
使用@InitBinder标签, spring在将参数传递到后台的controller的时候就可以自动转换成日起类型的格式了