SpringMVC 学习心得(三)

2016-12-27  本文已影响105人  ErCargo

基于注解配置的MVC

  1. 接收请求参数值
    Spring MVC 请求提交数据到控制器可以用以下3种方法:

    HttpServletRequest
    @RequestParam;
    使用自动机封装成Bean对象

  2. 向页面传值
    当Controller组件处理后,需要向Jsp传值

HttpServletRequest, Session
ModelAndView
ModelMap参数对象
@ModelAttribute

  1. Session存储

HttpServletRequest 的getSession()方法访问

  1. 重定向视图
    SpringMVC默认采用转发方式定位视图,重定向方式需要使用

RedirectView
redirect前缀

实战技巧

  1. 中文乱码的解决方案

CharacterEncodingFilter(Post请求)

  1. 拦截器

实现HandlerInterceptor接口
preHandle():处理器执行前被调用,返回值为true时,表示会继续调用其他拦截器和处理器;返回false则表示中断流程,不会执行后续拦截器和处理器;
postHandle(): 处理器执行后,视图处理前被调用,此时可以通过modelAndView对象对模型数据或视图进行处理;
afterCompletion(): 整个请求处理完毕后调用,如性能监控中我们可以在此记录结束时间并输出消耗时间,还可以进行一些资源清理,只有在preHandle()返回true才执行

  1. 异常处理

SimpleMappingExceptionResolver
实现HanlderExceptionResolver接口自定义异常处理器
使用@ExceptionHandler注解实现异常处理

  1. 文件上传

CommonMultipartResolver解析器组件
Commons FileUpload和COS FileUpload

  1. CommonMultipartResolver

调用common-fileupload.jar功能,将请求提交的文件信息解析出来;
需要引入:common-fileupload.jar和common-io.jar
添加bean定义

  1. 视图表单

<form enctype="multipart/form-data"></form>

未完待续
Good Night!

上一篇下一篇

猜你喜欢

热点阅读