SpringMVC框架默认支持的参数类型
处理器形参中添加如下类型的参数,处理适配器会默认识别并进行赋值。
使用Model和ModelMap的效果是一样的,如果直接使用Model接口,SpringMVC会实例化ModelMap
@RequestParam 用于处理简单类型的数据绑定
value :请求参数名
required : 参数是否毕传,默认为true
defaultValue : 请求参数的默认值,表示如果请求中没有同名参数时的默认值。
@RequestMapping
通过@RequestMapping注解可以定义不同的处理器映射规则。
url路径映射 (可以支持多个映射)
窄化请求映射
可以将@RequestMapping 设置在类上,设置请求前缀,窄化请求
参数 method 可以设置请求方式(可以多个)
spring-mvc 对json支持
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.9</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.9</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.9</version>
</dependency>
SpringMVC和前台交互主要有两种形式
@RequestBody注解
@RequestBody注解用于读取http请求的内容(字符串),通过SpringMVC提供的HttpMessageConverter接口将读到的内容转换为json、xml等格式的数据并绑定到Controller类方法的参数上。
@ResponseBody注解
@ResponseBody注解用于将Controller类方法返回的对象通过HttpMessageConverter接口转换为指定格式(如json、xml等)的数据,并通过response响应给客户端。