Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说SpringMVC自定义类型转换器的实现--钟伟zw,希望能够帮助你!!!。
SpringMVC中,当表单日期格式为2020/10/20时,idea可以自动识别,但是当日期格式为2020-10-20的时候,idea无法识别。这时候就需要自定义类型转换器。自定义类型转换器还有很多其他的用途,这里以日期格式为例,实现SpringMVC自定义类型转换器步骤如下:
1.写一个StringToDateConverter的类,在类中实现由-转化成/的方法。
package cn.itcast.utils;
import javafx.scene.input.DataFormat;
import org.springframework.core.convert.converter.Converter;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
//把字符串转换成日期
public class StringToDateConverter implements Converter<String, Date> {
/** * s就是source,就是传进来的参数 * @param s * @return */
@Override
public Date convert(String s) {
//判断一下
if (s==null){
throw new RuntimeException("请传入数据");
}
DateFormat df= new SimpleDateFormat("yyyy-mm-dd");
try {
return df.parse(s.replace("/","-"));
} catch (Exception e) {
throw new RuntimeException("数据转换出错");
}
}
}
2.在spring.xml中配置自定义类型转换器。
<!--配置自定义类型转换器-->
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<set>
<bean class="cn.itcast.utils.StringToDateConverter"></bean>
</set>
</property>
</bean>
3.开启Springmvc框架注解的支持(使注册的类型转换器生效)。
<!--开启Springmvc框架注解的支持-->
<mvc:annotation-driven conversion-service="conversionService"/>
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章