对于对象的注入,我们使用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才干使用到它。