本文共 1484 字,大约阅读时间需要 4 分钟。
对于对象的注入,我们使用ref方式,可以指定注入的对象,下面看下对于基本类型的注入,以及当spring无法转换基本类型进行注入时,如何编写一个类似转换器的东西来完成注入。
下面写一个简单类,来看下spring中对于基本类型的注入:
hello_spring
list1 list2 set1 set2
array1 array2
在测试类中加入java.util.Date:
配置:
如果像前面那样配置dataValue,为他注入值,会因为string在转换Date的时候spring无法识别util.Date而报错,所以,我们要自己定义一个类,来将如果转换的这一过程写下来。
/* * java.util.date属性编辑器 */public class UtilDatePropertyEditor extends PropertyEditorSupport{ private String pattern;//日期时间格式 public void setPattern(String pattern) { this.pattern = pattern; } @Override public void setAsText(String text) throws IllegalArgumentException { try { Date d=new SimpleDateFormat(pattern).parse(text); this.setValue(d);//设置转换后的值 } catch (ParseException e) { e.printStackTrace(); } }}
注意要继承PropertyEditorSupport类并实现setAsText方法。
转换器的配置:
add进spring的源码,围观下:
这一配置的原因就是,我们要将自己定义的属性编辑器,放到CustomEditorConfigurer 它的customEditors里面,这样spring才能使用到它。
转载地址:http://wbsql.baihongyu.com/