加载properties文件里的信息
创建一个命名空间,名字为context
想要让Spring管理第三方jar包中的类
需要考虑:
被配置的类的实例化方式是什么(无参构造,有参构造,静态工厂还是实例工厂)
被配置的类是否需要注入必要属性
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.12</version>
</dependency>
<!--使用context空间加载properties文件-->
<context:property-placeholder location="druid.properties"/>
<!--管理DruidDataSource对象-->
<!--使用属性占位符${}读取properties文件中的属性-->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<!--name并不是实体类中的属性名,而是set方法名去掉set之后的名字-->
<property name="driverClassName" value="${driverClassName}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</bean>
// 不加载系统属性(同名的话,系统属性会将配置文件中的覆盖掉)
<context:property-placeholder location="druid.properties" system-properties-mode="NEVER"/>
// 加载多个properties文件
<context:property-placeholder location="druid.properties,druid2.properties" system-properties-mode="NEVER"/>
// 加载所有properties文件
<context:property-placeholder location="classpath:*.properties"/>
// 将其所依赖的jar包中的properties文件也进行读取
<context:property-placeholder location="classpath*:*.properties"/>