中文字符集的处理
处理中文字符集使用mvc提供的一个CharacterEncodingFilter过滤器,只需要在web.xml配置信息里面添加如下过滤器配置
<filter>
<filter-name>characterEncoding</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>characterEncoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
自定义类型转换器
情景案例:我们需要在网页上输入一个日期,但是springmvc有自己的日期转换格式类型,但是我们想用我们自己的格式,这时候就需要自定义一个类型转换器
- 1)自定义一个类,实现Converter接口,重写方法
/**
* 自定义转化器:将String转化成Date
*/public class StringToDateConverter implements Converter<String, Date> {
@Override
public Date convert(String s) {
//自定义一个转换规则
//将请求发送过来的String信息转化成自己要的那个对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");
Date date = null;
try {
date = sdf.parse(s);
} catch (ParseException e) {
e.printStackTrace();
}
//将对象返回
return date;
}
}
- 2)告知Spring需要加载并管理该对象,Spring的核心配置文件信息如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop https://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 开启spring注解驱动-->
<context:component-scan base-package="com.cjh"/>
<!-- 开启mvc注解驱动-->
<mvc:annotation-driven></mvc:annotation-driven>
<!-- 加载一个类型转换器,这个类是用来帮我们管理我们自定义的类型转换器-->
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<set> <bean class="com.cjh.util.StringToDateConverter"/>
</set> </property> </bean>
<!-- 手动配置这个类的驱动-->
<mvc:annotation-driven conversion-service="conversionService"></mvc:annotation-driven>
</beans>
3)具体实现如下:
- JSP:
<%@ page contentType="text/html; charset=UTF-8" language="java" %> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>cai jin hong</title> <style> </style></head> <body> <form action="testFive.do" method="post"> date:<input type="text" name="date" value=""> <input type="submit" value="submit"> </form> </body> </html>
- Java代码:
@Controller public class UserController { //方法中传入实体对象:对象里面有list集合 @RequestMapping("testFive.do") public void testFive(Date date){ System.out.println(user); } }
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。