Converter主要使用于将前端数据转换为java对应的对象。比如把前端传入的字符串转换为Date类型数据

使用方法

@Component
public class StringToDateConverter implements Converter<String, Date> {public static final Logger logger = LoggerFactory.getLogger(StringToDateConverter.class);static SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");/*** 格式转换的还需要* @param source* @return*/@Overridepublic Date convert(String source) {Date date = new Date();try {date =  simpleDateFormat.parse(source);} catch (ParseException e) {logger.info(source + "转换异常");e.printStackTrace();}return date;}
}

Converter<String, Date>

将String类型转换为Date类型,是一个函数接口
主要转换方法在 public Date convert(String source)当中*

不仅可以处理已有的数据类型,还可以处理对应的枚举类型

为了方便,前端在往后端传数据的时候可以值传对应的id,由后端自行处理

枚举

public enum VideoTypeEnum {//'电影类型 0 其他 1 动画 2 恐怖 3 爱情 4 动作 5 喜剧',ELSE(0,"其他类型"),CARTOON(1, "动画"),DRACULA(2, "恐怖"),LOVE(3, "爱情"),ACTION(4, "动作"),COMEDY(5, "喜剧");private int id;private String type;VideoTypeEnum() {}VideoTypeEnum(int i, String s) {this.id = i;this.type = s;}public int getId() {return id;}public String getType() {return type;}public static void main(String[] args) {for (VideoTypeEnum value : VideoTypeEnum.values()) {System.out.println(value.toString() + "  " + value.ordinal());}System.out.println(VideoTypeEnum.valueOf("ELSE"));}/*** 根据id返回前端的VideoTypeEnum* @param id* @return*/public static VideoTypeEnum getEnumById(int id){switch (id){case 1:return VideoTypeEnum.CARTOON;case 2:return VideoTypeEnum.DRACULA;case 3:return VideoTypeEnum.LOVE;case 4:return VideoTypeEnum.ACTION;case 5:return VideoTypeEnum.COMEDY;default:return VideoTypeEnum.ELSE;}}@Overridepublic String toString() {return "VideoTypeEnum{" +"id=" + id +", type='" + type + '\'' +'}';}
}

对应的类型转换器

@Component
public class StringToEnumConverter implements Converter<Integer, VideoTypeEnum> {@Overridepublic VideoTypeEnum convert(Integer source) {return VideoTypeEnum.getEnumById(source);}
}

Spring 之 Converter转换器相关推荐

  1. EasyExcel 导出时 Converter转换器 注入 ExcelContentProperty 为null

    异常现象: Converter转换器 注入 ExcelContentProperty 为null 直接原因: 调用**.head()**方法,重写表头样式,就导致ExcelContentPropert ...

  2. Spring MVC Converter(类型转换器)详解

    Spring MVC 框架的 Converter<S,T> 是一个可以将一种数据类型转换成另一种数据类型的接口,这里 S 表示源类型,T 表示目标类型.开发者在实际应用中使用框架内置的类型 ...

  3. java converter转换器_在SpringMVC中设置自定义类型转换器Converter

    前言 在SpringMVC中为我们提供了许多内置的类型转换器,当我们在HTML表单中发起一个请求时,Spring会根据表单项中name属性的值映射到POJO的属性名,调用相对性属性的set方法帮我们把 ...

  4. Spring MVC 数据类型转换器

    Spring MVC默认数据类型转换器: ConversionService converters =java.lang.Boolean -> java.lang.String : org.sp ...

  5. spring中Converter如何注入的

    1.概要 spring boot框架中定义的类型为Converter的Bean是如何注入到Spring框架中的,主要是通过DefaultFormattingConversionService来完成的. ...

  6. java converter转换器_springboot 自定义转换器(converter)

    springboot 自定义转换器(converter) 应用:实现一对一转换,如将字符串转换为pojo.枚举等 *********************** 相关类与接口 Converter @F ...

  7. java spring mvc中类转换器

    相关文章: AOP的相关的文章介绍: javaweb中Aop(jdk动态代理)https://blog.csdn.net/weixin_43319279/article/details/1031250 ...

  8. Spring MVC数据转换、格式化、校验、文件上传和下载

    本篇文章主要分享下自己在学习Spring MVC数据转换.格式化和数据校验.Spring MVC文件上传和下载以及Spring MVC拦截器遇到的一些问题和读书笔记,希望对你有所帮助. @Compon ...

  9. Spring MVC-06循序渐进之Converter和Formatter

    概述 converter Step 1 实现Converter接口 Step 2 SpringMVC配置文件中配置bean及设置conversion-service属性 小Demo formatter ...

最新文章

  1. 实现跨浏览器的HTML5占位符
  2. 蓝桥杯 如何计算 X^X = 10 来求X呢?
  3. 问题 | CondaHTTPError: HTTP 404 NOT FOUND for url
  4. Getting Started with Google Guava--思维导图笔记
  5. 怎么去掉ECSHOP的Powered by ECShop版权信息
  6. 拼多多算法笔试2020
  7. 【API进阶之路】帮公司省下20万调研费!如何巧用情感分析API实现用户偏好调研
  8. 【UI设计师必备】完美色彩搭配超级实用GUI的素材
  9. centos7 如何重启web服务_如何重启web服务器
  10. nhibernate源码分析之六: Criteria数据加载
  11. jquery显示隐藏切换_jQuery显示,隐藏,切换
  12. 2月26日 Scrapy入门
  13. spring cloud互联网分布式微服务云平台规划分析--spring cloud服务监控中心
  14. linux自动加密软件开发,【天锐绿盾加密软件支持Linux_信息安全管理系统_文件自动加密_文档加密_图纸加密_网络实时监控_网络行为管理_内网安全的软件系统】免费在线试用_文档管理_选软件网...
  15. Revit二次开发之创建共享参数及绑定共享参数【比目鱼原创】
  16. 等保2.0二级安全要求
  17. python+django+mysql疫苗预约系统毕业设计毕设开题报告
  18. Mac-wifi密码破解 2020-04-30
  19. 组装三代番木瓜基因组——by Serenity Fang
  20. 【推荐】技术面试结束后,如何向技术面试官提问?

热门文章

  1. 服务器axios响应慢,axios请求问题总结
  2. 税前工资,税后能拿多少?请大家仔细看完。
  3. AEB前装搭载率逼近50%,沃尔沃「标配」激光雷达释放信号
  4. 服务器开通多个虚拟主机,一台服务器开通多虚拟主机
  5. Shiro反序列化漏洞利用笔记
  6. 单片机物联网升级方案
  7. 你的996,可能是给公司无能的管理背锅
  8. CoinEx研究院:PoX=PoW+PoS?一文详述Stacks项目
  9. java gcm_Java实现AES-GCM解密,JS实现AES-GCM加密。
  10. java关于请求参数转Map的记录