SpringMVC 传日期参数到后台的实例讲解

时间:2022-06-26 05:10:48

1、注解方式,在controller层通过initBinder注解实现

?
1
2
3
4
5
6
@InitBinder
public void initBinder(HttpServletRequest request,ServletRequestDataBinder binder)throws Exception {
  DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
  CustomDateEditor dateEditor = new CustomDateEditor(fmt, true);
  binder.registerCustomEditor(Date.class, dateEditor);
}

2、类型转换,SpringMvc提供了Converter接口

?
1
2
3
4
5
6
7
8
9
10
11
12
public class DateConvert implements Converter<String, Date> {
 @Override
 public Date convert(String stringDate) {
  SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
  try {
   return simpleDateFormat.parse(stringDate);
  } catch (ParseException e) {
   e.printStackTrace();
  }
  return null;
 }
}

spring.xml中配置转换器

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!-- 第一步: 创建自定义日期转换规则 -->
<bean id="dateConvert" class="xxx.xxx.DateConvert"/>
 
<!-- 第二步: 创建convertion-Service ,并注入dateConvert-->
<bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
 <property name="converters">
  <set>
   <ref bean="dateConvert"/>
  </set>
 </property>
</bean>
 
<!-- 第三步:注册处理器映射器/处理器适配器 ,添加conversion-service属性-->
<mvc:annotation-driven conversion-service="conversionService"/>

以上这篇SpringMVC 传日期参数到后台的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:http://www.cnblogs.com/tianxia-09/p/8032673.html