解决乱码的一些方法:
方法一:利用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"/>