SpringMVC获取Data类型数据
- 创建一个转换器类,实现
Converter
接口 (Converter<String, Date>
) - 在springmvc.xml中注册转换器对象。
- 在control方法的形参中即可直接获取Data对象。
SpringMVC无法直接获取Data类型数据,需要自定义类,实现Converter
接口,自定义字符串解析到Data对象的规则,并完成相关注册。
举例
创建一个转换器类,实现 Converter
接口 (Converter<String, Date>
)
public class StringToDateConverter implements Converter<String, Date> {
@Override
public Date convert(String msg) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
return sdf.parse(msg);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}
在springmvc.xml中注册转换器对象
<!-- 配置转换器 -->
<bean id="formattingConversionServiceFactoryBean" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<set>
<!-- 添加我们自定义的转换器 -->
<bean class="com.bb.converter.StringToDateConverter"/>
</set>
</property>
</bean>
在control方法的形参中即可直接获取Data对象
@RequestMapping("/query3")
@ResponseBody
public String query3(Date birth){
System.out.println(birth);
return "ok";
}
测试
总结:通过自定义转换器,轻松将请求参数中的字符串转换为Data类型。不要忘记在配置文件中配置转换器对象。
项目打包 提取码:vhwy
环境:eclipse