控制器获取参数
1.控制器方法的形参名和请求地址中得参数名保持一致,springmvc就可以自动地把请求地址地参数注入到形参里面,如果请求参数名和形参不一致要使用@RequestParam这个注解
@RequestParam注解的使用
参数:
value ---------------- 请求地址的字段
required ------------默认值为true,如果请求参数没有指定的字段则会报错
defaultValue -------------默认值,如果请求参数为’'或者没有对应的请求参数则会使用默认值注入修饰的形参
@RequestHeader //也是value required defaultValue这三个值
功能:将请求头中的数据映射到形参中
@CookieValue //也是那三个参数,可以根据指定value的值将Cookie注入到形参中
2.使用POJO注入参数
- 在控制器方法写入对应的javabean
- 保持bean的属性和请求参数名一致
- 这样就可以自动注入了
解决POST编码中文乱码问题
配置CharacterEncodingFilter
<!--配置springmvc字符编码过滤器-->
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>