如何将SpringMVC的自定义类型转换器改写为长尾?

2026-04-11 10:251阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计416个文字,预计阅读时间需要2分钟。

如何将SpringMVC的自定义类型转换器改写为长尾?

自定义类型转换器是什么?

假设前台传递过来这样一条字符串:apple,10.58,200,该字符串表示一个产品信息,后台需要自动创建一个Goods对象,并将apple的值自动赋值给goodsName属性。

自定义类型转换器是什么

假如前台传来这样一条字符串:“apple,10.58,200”,该字符串表示一个商品信息,后台需要自动创建一个Goods对象,并将“apple”值自动赋值给goodsName属性,将“10.58”值给goodsPrice属性,将“200”值赋给goodsNumber属性。

应用场景

这里用的是时间的转换。假如我们需要在get方法中传入一个时间对象,我们就要写但是我们常用的日期格式是2022-02-05所以为了方便书写,我们可以使用日期类型转换器来达到相同的效果。

如何将SpringMVC的自定义类型转换器改写为长尾?

代码 userController 访问函数

@RequestMapping(value = "/quick13") @ResponseBody //告知spring直接进行数据回写,不跳转 public void save13(Date date) throws JsonProcessingException { System.out.println(date); }

定义一个类,实现Converter<S,T>接口

package wjb.converter; import org.springframework.core.convert.converter.Converter; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DataConverter implements Converter<String,Date> { @Override public Date convert(String datsStr) { //日期字符串传唤为日期对象 Date date = null; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); try { date = format.parse(datsStr); } catch (ParseException e) { e.printStackTrace(); } return date; } } 在springmvc配置文件中配置类型转换器,将类型转换器交给spring容器管理

<mvc:annotation-driven conversion-service="conversionService"/>


<!-- 声明转换器 --> <bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"> <property name="converters"> <list> <bean class="wjb.converter.DataConverter"></bean> </list> </property> </bean>

本文共计416个文字,预计阅读时间需要2分钟。

如何将SpringMVC的自定义类型转换器改写为长尾?

自定义类型转换器是什么?

假设前台传递过来这样一条字符串:apple,10.58,200,该字符串表示一个产品信息,后台需要自动创建一个Goods对象,并将apple的值自动赋值给goodsName属性。

自定义类型转换器是什么

假如前台传来这样一条字符串:“apple,10.58,200”,该字符串表示一个商品信息,后台需要自动创建一个Goods对象,并将“apple”值自动赋值给goodsName属性,将“10.58”值给goodsPrice属性,将“200”值赋给goodsNumber属性。

应用场景

这里用的是时间的转换。假如我们需要在get方法中传入一个时间对象,我们就要写但是我们常用的日期格式是2022-02-05所以为了方便书写,我们可以使用日期类型转换器来达到相同的效果。

如何将SpringMVC的自定义类型转换器改写为长尾?

代码 userController 访问函数

@RequestMapping(value = "/quick13") @ResponseBody //告知spring直接进行数据回写,不跳转 public void save13(Date date) throws JsonProcessingException { System.out.println(date); }

定义一个类,实现Converter<S,T>接口

package wjb.converter; import org.springframework.core.convert.converter.Converter; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DataConverter implements Converter<String,Date> { @Override public Date convert(String datsStr) { //日期字符串传唤为日期对象 Date date = null; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); try { date = format.parse(datsStr); } catch (ParseException e) { e.printStackTrace(); } return date; } } 在springmvc配置文件中配置类型转换器,将类型转换器交给spring容器管理

<mvc:annotation-driven conversion-service="conversionService"/>


<!-- 声明转换器 --> <bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"> <property name="converters"> <list> <bean class="wjb.converter.DataConverter"></bean> </list> </property> </bean>