1、默认支持类型
a、HttpServletRequest
b、HttpServletResponse
c、HttpSession
e、Model/ModelMap
model是接口,modelmap是接口实现。将model数据填充到request域
2、简单类型
a、直接在controller上加上形参
这种方式,链接中可以不传入定义的参数或为空,不会报错。如果要正常使用,则请求过来的参数,必须与形参名一致。
b、使用@RequestParam
3、pojo类型
对应表单提交
请求过来的的参数和pojo类型要一致。
如input标签的name=”username”与User的字段username一致。
测试准备
-------controller
-------JSP
测试开始
乱码问题POST
<!-- Spring post 乱码过滤 -->
<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>
4、自定义类型转换
添加全局的日期类型转换器
----------------------------------------
//转换器
public class DateConverter implements Converter<String, Date>{
@Override
public Date convert(String source) {
// 将日期转成yyyy/MM/dd格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
try {
Date date = sdf.parse(source);
return date;
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}
jsp输出的格式是用jstl
过程从
到
5、包装pojo
用.的方式来取值
POJO
JSP
CONTROLLER
DEBUG测试
6.集合类型(通过pojo传递)
a、数组
pojo类
JSP
controller与5中一样。
测试
jsp
Debug
b、List绑定
规则。形参名<pojo>[下标].(pojo的属性名)
POJO增加一个list
JSP静态模拟EL取值。(下标可通过el表达式来赋值)
controller(还是不变)
接收的jsp(view)
测试。
c、Map
controller不变。
pojo增加一个map
JSP
VIEW(JSP)
测试
----------