springMVC自定义类型转换器(date类型转换)

本文介绍了一个自定义的日期转换器实现,通过实现Convert接口并覆盖convert方法,能够根据不同的日期格式字符串进行日期解析。同时,文章详细说明了如何在Spring MVC中注册和使用该转换器,包括配置bean和添加mvc注解驱动,以及如何处理转换异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//日期的月份不能写成小写mm,因为在日期中还有分钟mm,这两者不能相同。

1.创建一个类实现Convert接口,实现convert方法

public date convert(String source){

  if(source!=null&&!source.equals(""){

    SimpleDateFormat sdf=getSimpleDateFormat(source);

    return sdf.parse(source);

  }

}

public Date getSimpleDateFormat(String source){

  SimpleDateFormat  sdf=new SimpleDateFormat();

  if(Pattern.matches("^//d{4}-//d{2}-//d{2}$",source){

    sdf.applayPattern("yyyy-MM-dd");

  }else if(Pattern.matches("^//d{4}///d{2}///d{2}$",source){

    sdf.applayPattern("yyyy/MM/dd");

  }else if(Pattern.matches("^//d{4}//d{2}//d{2}$",source){

    sdf.applayPattern("yyyyMMdd");

  }

  return sdf;

}

2.注册类型转换器

<bean id="typeConvert" class="刚才创建的类的路径"/>//由beanFactory去生成这个类

<bean id="convertionServiceBean" class="convertionServiceFactoryBean的全路径名">

 <!-- <property name="convert">

    <set>

      <ref bean="typeConvert"/>

      <ref bean="typeConvert2"/>

    </set>

  </property >-->多个转换类型的写法

</bean>

<property name="convert" ref="typeConvert"/>//这里只有一个可以这样写

处理器映射器去调用convertionServiceBean,当springMVC注解驱动被加载的时候,这个convertionServiceBean给了处理器映射器。所以要添加mvc注解驱动

<mvc:annotation-driven convertion-service="convertionServiceBean"/>

3.当填写错误时,给用户反映报错问题,并需要重新填写。

在自定义的处理器中添加一个注解式处理异常的方法

@ExceptionHandler

public  ModleAndView handlerException(Exception ex){

  ModleAndView  mv=new ModleAndView();
  mv.addObject("ex","ex.getMassage")
  mv.setViewName("xxx.jsp");出现异常后跳转到xxx.jsp
  return mv;
  

}

 

转载于:https://www.cnblogs.com/liuna369-4369/p/10019524.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值