常用注解,文件上传下载,post中午乱码,异常处理器,拦截器

一 : 常用注解
(一) @RequestParam
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
(二) @RequestHeader
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
(三) @CookieValue
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
(四) @RequestBody和@ResponseBody
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
注意: 如果需要进行json格式转换, 需要使用jackson-databind.jar

(五) @SessionAttributes
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
表示将model中的msg存到session中

(六) @ModelAttribute
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器

  1. 放在形参列表中是从域对象中获取值
  2. 放在方法上是往域对象中存值

(七) @RequestMapping
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
Value: 统一资源定位符
Method: 请求方式

Get: 获取 --> @GetMapping
Post: 插入 --> @PostMapping
Put: 修改 --> @PutMapping
Delete: 删除 --> @DeleteMapping

(八) @PathVariable
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
注意: 要使用restFul风格, DispatcherServlet的拦截方法必须是/
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
二 : 上传和下载
(一) 上传
要求
请求方式: post
数据类型:
格式: enctype=“multipart/form-data”

  1. 添加依赖
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
  2. 编写配置文件
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
  3. 编写处理器
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
  4. 编写表单
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
    (二) 下载
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
    三 : 中文post乱码处理
    在web.xml中添加如下配置
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
    四 : 静态资源处理
    (一) 委托默认servlet处理
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
    (二) 手动映射静态资源
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
    (三) 小结
    手动映射可以找到WEB-INF下的资源, 静态资源少可以选用
    默认servlet不能找到WEB-INF下的资源, 如果静态文件数据量大, 而且位于web-inf外, 可以选用

五 : 异常处理机制
(一) 编写全局异常处理器
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
(二) 修改配置文件
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
六 : 拦截器
(一) 编写自定义拦截器
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
(二) 编写配置文件
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
(三) 拦截器链

  1. 同一个处理器可以配置多个拦截器
  2. 拦截器的执行是有顺序的, 就是我们的配置顺序
  3. 拦截器的执行是先进后出
    常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
    /* : 表示拦截一级请求
    /** : 拦截一级请求和多级请求

(四) 释放拦截
常用注解,文件上传下载,post中午乱码,异常处理器,拦截器
七 : 框架总结

  1. 前端控制器
  2. 三大器: 处理器映射器, 处理器适配器, 视图解析器
  3. 三小器: 自定义类型转换器, 全局异常处理器, 拦截器
  4. Post乱码处理(web)
  5. 上传(multipartfile)和下载(responseEntity)
  6. RestFul风格(/ @PathVariable)
  7. 静态资源映射
  8. 转发和重定向
  9. 重定向传值