之前我们都是介绍如何注入依赖对象类型的,那么如何注入基本类型呢?

例如:

private String name;

我们如何给 name 属性注入值?

1、修改 PresonServiceImpl 类,代码如下:


2、修改 XML文件,代码如下:

3、测试。

4、以上功能的实现原理,如下:

(1)、修改  PropertyDefinition 类, 代码如下:

(2)、http://commons.apache.org/proper/commons-beanutils/download_beanutils.cgi 下载commons-beanutils,导入 commons-beanutils-1.8.3.jar

(3)、修改 TestClassPathXMLApplicationContext 类,代码如下:

 

if(null != propertyDefinition.getRef() && !"".equals(propertyDefinition.getRef())){
    value = sigletons.get(propertyDefinition.getRef());
}else{
    value = ConvertUtils.convert(propertyDefinition.getValue(), propertydesc.getPropertyType());
}

首先,判断 ref 是否存在,如果存在则注入依赖对象,否则注入基本类型;ConvertUtils.convert() 方法来自之前导入的jar,作用是:将得到的值转化为所要的类型。

(4)、修改 TestSpring 类,测试。代码如下:


XML 文件不变。

posted on 2013-11-23 16:41  hwlsniper  阅读(199)  评论(0)    收藏  举报