SpringMVC-Day02

27 篇文章 0 订阅

1 @RequestMapping的请求头限定


限定请求头要有谁

特定的请求头中的值

1.1 通用的限定headers

在这里插入图片描述

1.2 特定的限定(值)

Content-Type、Accept
在这里插入图片描述

1.2.1 consumes

Content-Type

在这里插入图片描述

1.2.2 produces

Accept
在这里插入图片描述

2Handler方法的返回值

2.1视图相关

2.1.1void(request和response)

和之前的servlet是一样的

2.1.2ModelAndView

在上面的案例中都已经用烂了

404
1、有没有进入到对应的Handler方法中
2、viewName对应的jsp文件的路径写法 → 以/作为开头
3、jsp文件没有编译(编译路径下看)→ target/artifactId-version目录
在这里插入图片描述

2.1.3 String

返回值为字符串仍然可以处理ModelAndView
返回值作为ViewName来使用
Model作为形参

2.1.3.1物理视图名
在这里插入图片描述

2.1.3.2逻辑视图名
视图解析器:Handler返回的ViewName去做额外的拼接(字符串的拼接)
prefix:前缀
suffix:后缀

prefix=/WEB-INF/jsp/
suffix=.jsp
return “string”; //最终的viewName → /WEB-INF/jsp/string.jsp
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 String作为返回值 → 转发和重定向(请求)

forward:/url

redirect:/url

2.2.1 转发
在这里插入图片描述

2.2.2 重定向
在这里插入图片描述

2.2.3 不写/的相对路径(了解)

去掉请求url的最后一级,然后在拼接相对路径
在这里插入图片描述

2.3 Json(重点)

返回的是Object
Jackson 不需要我们去调用他的方法
@ResponseBody

2.3.1 引入jackson依赖
在这里插入图片描述

2.3.2 @ResponseBody
在这里插入图片描述

2.3.3 @RestController
在这里插入图片描述

2.3.4 注意

返回值的类中要包含无参构造方法、get/set方法
只要使用json工具类,其实都需要注意的点

2.3.5 常用的json数据模型
在这里插入图片描述

3 Handler方法的形参

请求参数的封装、请求、响应、cookie、session

3.1 请求参数的封装

3.1.1 直接进行封装

3.1.1.1 基本类型、包装类、字符串

请求参数直接写在形参中
在这里插入图片描述

3.1.1.2数组
在这里插入图片描述

3.1.1.3Date日期
在这里插入图片描述

3.1.1.3.1自定义的转换器

自己决定类型 → 由xxx1类型转换为xxx2类型

何时会使用上转换器
1、转换器完成正确的配置
2、请求参数名和handler方法的形参名一致的前提下,形参的类型又对应了转换器的xxx2

3.1.1.3.1.1转换器
implements Converter
在这里插入图片描述
在这里插入图片描述

3.1.1.3.1.2 转换器配置

注册为容器中的组件
在这里插入图片描述
conversionService配置
在这里插入图片描述

3.1.1.4 File文件

文件上传

3.1.1.4.1构造请求
在这里插入图片描述

3.1.1.4.2 提供一个multipartResolver组件
在这里插入图片描述

3.1.1.4.3 引入依赖
在这里插入图片描述

3.1.1.4.4 Handler方法接收文件
在这里插入图片描述

3.1.1.4.5 MultipartFile能做什么

获得信息
在这里插入图片描述
保存文件到磁盘

3.1.1.4.6 一次上传多个文件
在这里插入图片描述

3.1.2 Javabean接收请求参数

javabean中的成员变量名对应请求参数名
在这里插入图片描述

3.1.2.1 嵌套javabean
在这里插入图片描述

3.1.2.2 javabeanList
在这里插入图片描述

3.1.3 小结

直接在handler方法的形参中封装:请求参数名 → 形参名

以Javabean形式封装:请求参数名 → 成员变量名

如果类型不匹配就是用converter

3.2 Post请求的乱码

Filter → CharacterEncodingFilter

web.xml中

在这里插入图片描述

3.3 Json参数接收

3.3.1 postman构造json请求

Content-Type:application/json

method:Post

data:json字符串数据
在这里插入图片描述

login(User user)
在这里插入图片描述
也可以以Map来接收
在这里插入图片描述

3.3.2 一个url映射到不同的handler方法上
在这里插入图片描述

3.4 其他参数

3.4.1 request和response

直接写在任意handler方法的形参上

3.4.2 Model

String作为返回值

3.4.3 Cookie和Session

3.4.3.1 cookie
在这里插入图片描述
3.4.3.2 session
在这里插入图片描述
3.4.3.3 浏览器构造cookie
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值