1.在配置文件beans.xml 中,alias为bean设置别名 ,可以设置多个别名。
当id 和 name都使用时,可以把name的看着别名,且可以命名多个。在spring4.0后(对以前的版本不清楚),name="user11,user user13" 别名之间支持英文逗号,分号,空格。
beans.xml
<bean id="userFactory" class="com.xunifeng.factory.UserDynamicFactory"/>
<!-- 当id 和 name一起使用时,可以把name的看着别名,且可以命名多个 -->
<bean id="user" name="user11,user user13" factory-bean="userFactory" factory-method="newInstance">
<constructor-arg index="0" value="张三"/>
</bean>
<!-- 用alias 设置别名 -->
<alias name="user" alias="user14"/>
Test.java
public class Test {
public static void main(String[] args) {
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
User user=(User)context.getBean("user");
user.show();
}
}
其他文件代码,请看spring-ioc 学习笔记2的 代码。
2.bean的配置
id是bean的标识符,要唯一。如果没有id,name默认为标识符。如果配置了id,又配置了name,则可以把name看着别名,可以配置多个。class是bean的全限定名=包名+类名,如果不配置id和name,那么可以使用ApplicationContext.getBean(class)获取对象。
beans.xml
<bean class="com.xunifeng.bean.Hello">
<property name="name" value="章程"></property>
</bean>
Test.java
public class Test {
public static void main(String[] args) {
//解析beans.xml文件生成管理相应的bean对象
ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");
Hello hello = context.getBean(Hello.class);
hello.show();
}
}
3.import 通常用于团队协作开发。
beans.xml
<import resource="com/xunifeng/spring/entity.xml"/>
entity.xml
<bean class="com.xunifeng.bean.Hello">
<property name="name" value="章程"></property>
</bean>