`

关于Spring属性编辑器的使用(总结1):

    博客分类:
  • ssh
阅读更多
关于Spring属性编辑器的使用(总结1):

当要给bean注入的属性为特殊类型,如Date类型则需要定义属性编辑器来处理相应类型的数据的注入。

1,自定义class DatePropertyEditor extends PropertyEditorSupport 并重写(@Override)public void setAsText(String text)方法,最后调用父类的super.setValue(date);方法用于将转换类型后的数据保存下来。
   用于处理数据类型的转换,使得配置文件在读取实例化bean对象并要把属性值注入时使用,而这些信息需要配置文件去说明(applicationContext-editors.xml,区分于applicationContext-beans.xml)。


代码示例:

@Override
public void setAsText(String text) throws IllegalArgumentException {
SimpleDateFormat sdf=new SimpleDateFormat(format);
try {
Date date= sdf.parse(text);
super.setValue(date);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

2,在配置文件(applicationContext-beans.xml)中说明所做的数据类型处理,
<bean用户自定义属性编辑器类对象(实现自Spring定义好的类)><property><map><entry key="目标类型"><bean 类型转换的类对象>.....</bean>
注意:在配置文件中给值时不要多空格或者给<value>标签换行。(几乎所有的文件都要注意不要给添加空格!!!)


bean的class为org.springframework.beans.factory.config.CustomEditorConfigurer:
<property name="customEditors">中存放的时Map类型的数据,而Map中放的是<entry />,其中有属性key="java.util.Date"和 value-ref="datePropertyEditor",对于key可以作为属性配到entry中,也可以作为子标签配置其中,指的是所要转换成的类型; value-ref可以直接引用bean对象,也可以直接配作<bean>对象。


代码示例:
<bean id="dateEditor" class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="customEditors">
<map>
<entry key="java.util.Date">
<bean id="myDate" class="editors.DatePropertyEditor">
<property name="format">
<value>yyyy/mm/dd</value>
</property>
</bean>
</entry>
</map>
</property>
</bean>



分享到:
评论

相关推荐

    Spring-Reference_zh_CN(Spring中文参考手册)

    5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的...

    Spring 2.0 开发参考手册

    5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...

    Spring中文帮助文档

    5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...

    Spring API

    5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...

    spring.net中文手册在线版

    Spring.NET是一个应用程序框架,其目的是协助开发人员创建企业级的.NET应用程序。它提供了很多方面的功能,比如依赖注入、面向方面编程(AOP)、数据访问抽象及ASP.NET扩展等等。Spring.NET以Java版的Spring框架为...

    spring chm文档

    5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...

    Spring.3.x企业应用开发实战(完整版).part2

    5.2.2 Spring默认属性编辑器 5.2.3 自定义属性编辑器 5.3 使用外部属性文件 5.3.1 使用外部属性文件 5.3.2 使用加密的属性文件 5.3.3 属性文件自身的引用 5.4 引用Bean的属性值 5.5 国际化信息 5.5.1 基础知识 5.5.2...

    Spring3.x企业应用开发实战(完整版) part1

    5.2.2 Spring默认属性编辑器 5.2.3 自定义属性编辑器 5.3 使用外部属性文件 5.3.1 使用外部属性文件 5.3.2 使用加密的属性文件 5.3.3 属性文件自身的引用 5.4 引用Bean的属性值 5.5 国际化信息 5.5.1 基础知识 5.5.2...

    swing界面设计之JTree

    定义 bean 属性 21 创建 to-do 列表:创建一个可重用组件并在表中显示数据 23 创建一个可重用的面板 23 将 bean 组合在一起 24 添加一个表并重用这个面板 26 定义表模型 28 显示列表中的项 29 创建 to-do 列表:完成...

    深入解析ATL(第2版).pdf

    编辑推荐 ATL的发明人Jim Springfield亲自作序推荐。  四位顶尖的Windows编程专家倾力合作,绝对经典再现。  COM、ATL开发人员的必备宝典。  深入分析ATL实现COM内幕细节,展示COM应用中的各类漂亮技巧。  ATL...

    Java学习笔记-个人整理的

    \contentsline {chapter}{Contents}{2}{section*.1} {1}Java基础}{17}{chapter.1} {1.1}基本语法}{17}{section.1.1} {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{...

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

    著作:《java jdk 5.0学习笔记》、《java se 6技术手册》、《spring技术手册》等 译作:《ajax实战手册》、《jquery实战手册(第2版)》 个人网站:http://openhome.cc 目录 《java jdk 7学习笔记》 chapter1 ...

    互联网创意产品众筹平台

    问题一箩筐-自定义监听器,解决上下文路径使用问题 │ 10.问题一箩筐-重载-笔试题+ i4 I$ j6 d/ [- j: d │ 11.问题一箩筐-悲观锁和乐观锁7 L; ^; s& i# h/ l8 O$ m/ \' F │ 12.登录业务介绍-界面介绍! Z9 ?( h9 e$ ...

    整理后java开发全套达内学习笔记(含练习)

    Iterator [java] 迭代器, 迭代程序 legal 合法的 ['li:gәl] log n.日志,记录 [lɒg] native (关键字) ?? ['neitiv] nested [java] 嵌套的 ['nestid] '如:内部类(nested classes) Object [java] 对象 ['ɒbdʒ...

    asp.net知识库

    关于能自定义格式的、支持多语言的、支持多数据库的代码生成器的想法 发布Oracle存储过程包c#代码生成工具(CodeRobot) New Folder XCodeFactory3.0完全攻略--序 XCodeFactory3.0完全攻略--基本思想 XCodeFactory...

    Maven权威指南 很精典的学习教程,比ANT更好用

    总结 2. 安装和运行Maven 2.1. 验证你的Java安装 2.2. 下载Maven 2.3. 安装Maven 2.3.1. 在Mac OSX上安装Maven 2.3.2. 在Microsoft Windows上安装Maven 2.3.3. 在Linux上安装Maven 2.3.4. 在FreeBSD或...

    Activiti6.0教程例子下载

    3) libs:使用Activiti所需要的所有的jar包和源文件。 4) wars:官方给我们提供的示例Demo,通过使用Demo可以更加快速的了解Activiti。 2.1.2. 其他准备 使用Activiti,首先当然要有jdk了!6+版本就可以了。其次,...

Global site tag (gtag.js) - Google Analytics