通过应用程序上下文自动装配String属性

时间:2013-07-18 09:47:10

标签: spring

我想自动装配一个String bean,如下所示

<bean id="name" class="java.lang.String" autowire="byName">
        <constructor-arg value="Aravind"/>
</bean>
<bean id="employee" class="Employee" autowire="byName"/>

public Class Employee
{
   private String name;
   public void setName(String name)
   {
     this.name=name;
    }
   public String getName()
   {
     return name;
   }
}

当我尝试访问employee中的name属性时为null

Employee emp=(Employee)getApplicationContext().getBean("employee");
System.out.println(emp.getName()==null);

它打印为真。

有人可以为此提供帮助吗?

1 个答案:

答案 0 :(得分:1)

您仍然需要以某种方式在Employee设置属性。

可以通过多种方式设置名称。

XML配置。

<bean id="employee" class="Employee" autowire="byName">
    <property name="name">
        <ref bean="name" />
    </property>
</bean>

使用@Autowired

public Class Employee {
   @Autowired
   private String name;

   public void setName(String name) {
     this.name=name;
   }

   public String getName() {
     return name;
   }
}