目录
Bean的依赖注入
其中,ref是reference的缩写形式,翻译为:涉及,参考的意思,用于引用其它Bean的id。value用于注入普通属性值
依赖注入的数据类型有三种:
-
普通数据类型,例如String,int,boolean等,通过value属性指定
-
引用数据类型,例如UserDaoImpl,DataSource等,通过ref属性指定
-
集合数据类型,例如 List,Map,Properties等
-
其它配置标签
-
Spring的xml标签大体上分为两类,一种是默认标签,一种是自定义标签
默认标签:就是不用额外导入其他命名空间约束的标签,例如<bean> 标签
<beans>标签除了经常用作为根标签外,还可以嵌套再根标签内使用profile属性切换开发环境
<beans profile="dev">
<bean id="userService1" class="com.xfy.service.impl.UserServiceImpl"></bean>
</beans>
<beans profile="test">
<bean class="com.xfy.dao.Impl.UserDaoImpl" id="userDao"></bean>
</beans>
public class ApplicationContextTest {
public static void main(String[] args) {
System.setProperty("spring.profiles.active","test");
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("ApplicationContext.xml");
// 指定被激活的环境
/**
* 虚拟机参数位置加载 -Dspring.profiles.active=test
* 代码方式:System.setProperty("spring.profiles.active","test")
*/
// UserService service = (UserService)applicationContext.getBean("userService1");
UserDao userDao1 = (UserDao) applicationContext.getBean("userDao1");
// System.out.println(service);
System.out.println(userDao1);
}
}
<import>标签,用于导入其他配置文件,项目变大后,就会导致文件内容过多,可以将一个配置文件根据业务某块进行拆分,拆分后,最终通过<import>标签导入到一个主配置文件中,项目加载主配置文件就连同<import>导入的文件一并加载
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<import resource="Beans.xml"></import>
<alias>标签是为某个Bean减价别名
-
自定义标签:就是需要额外引入其他命名空间约束。并通过前缀引用的标签例如context:property-placeholder/