100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > spring mvc 03 解决乱码方法加自定义类型转换器Converter

spring mvc 03 解决乱码方法加自定义类型转换器Converter

时间:2020-09-18 13:31:29

相关推荐

spring mvc 03 解决乱码方法加自定义类型转换器Converter

解决乱码的一些方法:

方法一:利用springmvc提供的过滤波器,在web.xml下配置:

<!--过滤器解决乱码问题 可以解决大部分问题,有些get不能解决 --><filter><filter-name>encoding</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>encoding</filter-name><url-pattern>/*</url-pattern></filter-mapping>

方法二:自定义过滤器:参见其他大神们的作品:/alexzt/article/details/81063710

spring mvc自定义类型转换器编写

简介:一般情况下,springmvc可以转换任意前端的数据类型封装到实体类中,但是存在一些问题,比如时间类型的字符串/05/13客气转换为Date类型,但是这么写“-02-13”就不行了,需要自定义转换器。

第一步:创建一个类实现org.springframework.core.convert.converter.Converter接口

package com.it.util;import org.springframework.core.convert.converter.Converter;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;/*** 把字符串传换为日期*/public class StringToDateConverter implements Converter<String,Date> {/**** @param source 传入的字符串* @return*/public Date convert(String source) {if (source == null) {throw new RuntimeException("请输入你的日期");}DateFormat dt = new SimpleDateFormat("yyyy-MM-dd");try {return dt.parse(source);} catch (Exception e) {throw new RuntimeException("数据转换异常");}}}

第二步:在springmvc.xml中配置自定义类型转换器:

<!--自定义类型转换器--><bean id="ConversionServiceFactoryBeana" class="org.springframework.context.support.ConversionServiceFactoryBean"><property name="converters"><set><!-- 自定义的类型转换器,实现了Converter接口 --><bean class="com.it.util.StringToDateConverter"></bean></set></property></bean><!--开启mvc的注解驱动 并让自定义的类型转换器生效 --><mvc:annotation-driven conversion-service="ConversionServiceFactoryBeana"/>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。