PropertyEditor使用

假如我们的有如下类 其中date是你的生日,而你在配置文件中,或者使用注解都是字符串,所以我们有必要把字符串转换成Date类型的

packageliusheng.entity;importjava.util.Date;public classUser {privateString name;privateInteger id;publicDate getDate() {returndate;

}public voidsetDate(Date date) {this.date =date;

}privateDate date;publicString toString() {return "User{" +

"name='" + name + '\'' +

", id=" + id +

", date=" + date +

'}';

}publicUser(String name, Integer id) {this.name =name;this.id =id;

}publicString getName() {returnname;

}public voidsetName(String name) {this.name =name;

}publicInteger getId() {returnid;

}public voidsetId(Integer id) {this.id =id;

}publicUser() {

}

}

注意Spring中的Date转换器(CustomDateEditor),不能有参数,所以不能使用(Spring 5xx),我试过无法注入到

CustomEditorConfigurer的属性中,应为该属性是一个Map>

而spring中的Class类型只能通过字符串,所以不能有参数,所以转换器只能在类中写死

如:

packageliusheng.propertyEidtor;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.beans.factory.annotation.Qualifier;importorg.springframework.stereotype.Component;importjava.beans.PropertyEditorSupport;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.ArrayList;importjava.util.Date;importjava.util.List;

@Component("myDateEditor")public class MyDateEditor extendsPropertyEditorSupport {private Listlist;

{

list=new ArrayList();

list.add(new SimpleDateFormat("yyyy年MM月dd日"));

}publicString getAsText() {returngetValue().toString();

}public ListgetList() {returnlist;

}public void setList(Listlist) {this.list =list;

}public void setAsText(String text) throwsIllegalArgumentException {for(SimpleDateFormat format:

list) {try{

Date date=format.parse(text);

setValue(date);return;

}catch(ParseException e) {

}

}throw new RuntimeException("无法转换");

}

}

配置文件如下:

输出:

User{name='张三', id=10, date=Mon Dec 18 00:00:00 CST 1234}

你可以把配置文件放在外面,当然配置文件的位置与名字就定死了,这样可以灵活一点

propertyeditor java_PropertyEditor使用相关推荐

  1. Spring5参考指南: BeanWrapper和PropertyEditor

    文章目录 BeanWrapper PropertyEditor BeanWrapper 通常来说一个Bean包含一个默认的无参构造函数,和属性的get,set方法. org.springframewo ...

  2. 3. 搞定收工,PropertyEditor就到这

    分享.成长,拒绝浅藏辄止.搜索公众号[BAT的乌托邦],回复关键字专栏有Spring技术栈.中间件等小而美的原创专栏供以免费学习.本文已被 https://www.yourbatman.cn 收录. ...

  3. 2. Spring早期类型转换,基于PropertyEditor实现

    青年时种下什么,老年时就收获什么.关注公众号[BAT的乌托邦],有Spring技术栈.MyBatis.JVM.中间件等小而美的原创专栏供以免费学习.分享.成长,拒绝浅尝辄止.本文已被 https:// ...

  4. propertyeditor java_Spring Boot – 自定义PropertyEditor

    前言 PropertyEditor最初是属于Java Bean规范定义的,有意思的是,Spring也大规模的使用了PropertyEditors,以便实现以各种形式展现对象的属性: 举个例子,常见的用 ...

  5. 【Java基础】属性编辑器PropertyEditor

    在Spring配置文件里,我们往往通过字面值为Bean各种类型的属性提供设置值:不管是double类型还是int类型,在配置文件中都对应字符串类型的字面值.BeanWrapper填充Bean属性时如何 ...

  6. Eclipse(properties)插件:PropertyEditor在线安装

    2019独角兽企业重金招聘Python工程师标准>>> 在编辑一些简体中文.繁体中文等 Unicode文本时,不必再使用native2ascii编码了. 您可以通过Eclipse中的 ...

  7. java属性编辑器,即PropertyEditor

    出处:http://www.iteye.com/topic/1123628 转载于:https://www.cnblogs.com/it12345/p/5240679.html

  8. Spring MVC入门

    1.Spring Web MVC是什么 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解 ...

  9. SPRING3.X JSON 406 和 中文乱码问题

    2019独角兽企业重金招聘Python工程师标准>>> 简要 最近使用Spring3.2.3 版本  在使用 JSON message  convertion 的时候,老是出现406 ...

最新文章

  1. GAITC 2020 演讲实录丨张立华:机器智能的发展现状
  2. SQL SERVER中求上月、本月和下月的第一天和最后一天[转]
  3. noip模拟题 ----飞
  4. python全栈开发学习_day1_计算机五大组成部分及操作系统
  5. audino python_用 Python 实现 PowerDesigner 数据模型文件的处理
  6. Loguru:Python 日志终极解决方案
  7. 硬件反垃圾邮件网关|反垃圾邮件软件产品|反垃圾邮箱邮件系统
  8. Java(多)线程中注入Spring的Bean
  9. 趣味科普丨一文读懂云服务器的那些事儿
  10. 把CheckBox的方块换成图片或其他
  11. 性能飙升160%!阿里云发布第七代ECS、云原生数据库PolarDB-X等重磅新品
  12. linux centos erlang,CentOS 7.7安装Erlang和Elixir
  13. 【python】10行代码下载B站弹幕
  14. <2021SC@SDUSC>开源游戏引擎Overload代码分析五:OvEditor——RawShaders.cpp
  15. 真假iPhone5s的辨别方法,苹果5改5s,iPhone5 改 iPhone5s 识别方法
  16. 第五人格显示服务器连接失败,第五人格网络连接失败怎么回事
  17. 复旦-华盛顿大学EMBA科创的奥E丨《神奇的材料》与被塑造的我们
  18. ThinkPHP整合微信支付之发裂变红包
  19. 大数据核心技术之分布式基础入门
  20. SSM框架流浪动物管理系统宠物寄样收养领养宠物收容所管理(idea开发javaweb-javaee-j2ee-springboot)

热门文章

  1. Python实现堆排序
  2. MVC教程第五篇:MVC整合Ajax
  3. 是否应为孩子聘请家教 以及 什么样的家教适合孩子
  4. 【opencv学习】Fast算法进行角点检测
  5. Stanley-系列三
  6. 人工智能语言python实验报告_【报名】人工智能语言Python启蒙课程(五六年级)...
  7. Windows/Linux如何查看动态库的依赖关系?
  8. Tesla P4测试
  9. leetcode —— 15. 三数之和
  10. GOF之结构型模式Ⅰ(重点)