6.SpringMVC-类型转换器
本文最后更新于2024.04.28-07:51
,某些文章具有时效性,若有错误或已失效,请在下方留言或联系涛哥。
为什么要使用类型转换器?
http发起请求的参数 都是以字符串的形式,那么springmvc 利用转换器可以把 传递过来的字符串,转换成需要的数据类型
以下是一些常见的内置转换器:
-
StringToStringConverter:将字符串转换成任何类型。
-
NumberToNumberConverterFactory:将 Number 子类型转换成其它 Number 子类型。
-
StringToNumberConverterFactory:将字符串转换成 Number 类型。
-
StringToBooleanConverter:将字符串转换成 Boolean 类型。
-
NumberToBooleanConverter:将 Number 类型转换成 Boolean 类型。
-
StringToEnumConverterFactory:将字符串转换成枚举类型。
-
EnumToStringConverter:将枚举类型转换成字符串。
-
StringToCharConverter:将字符串转换成 Character 类型。
-
StringToLocaleConverter:将字符串转换成 Locale 类型。
-
PropertiesToStringConverter:将 Properties 类型转换成字符串。
-
StringToPropertiesConverter:将字符串转换成 Properties 类型。
a.内置的类型转换器(略)
b.自定义类型转换器
自定义类型转换器的使用
1.创建 转换器类
该类实现 Converter<S,T> 接口,
2.重写 接口的 convert 方法,其中 s代表 原数据类型,T代表 要转换的数据类型
package com.edu.converter;
import org.springframework.core.convert.converter.Converter;
import org.springframework.stereotype.Component;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
@Component("stringToDate")
public class StringToDateConverter implements Converter<String,Date> {
public Date convert(String s) {
DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
try {
Date date=df.parse(s);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}
3.在mvc的配置文件中 注册 该转换器
a 配置 bean ConversionServiceFactoryBean
b 注入 converters 属性
c. 注册服务
d.前端传参的时候 直接控制器里 方法形参的对象名 即可
<!--类型转换器-->
<bean class="org.springframework.context.support.ConversionServiceFactoryBean" id="conversionService">
<property name="converters">
<set>
<ref bean="stringToDate"></ref>
</set>
</property>
</bean>
<!--注册服务-->
<mvc:annotation-driven conversion-service="conversionService"></mvc:annotation-driven>
阅读剩余
版权声明:
作者:涛哥
链接:https://ltbk.net/back/spring_family/springmvc/article/905.html
文章版权归作者所有,未经允许请勿转载。
作者:涛哥
链接:https://ltbk.net/back/spring_family/springmvc/article/905.html
文章版权归作者所有,未经允许请勿转载。
THE END