db.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/xxx?characterEncoding=utf-8
jdbc.username=root
jdbc.password=123456
dao层
applicationContext-dao.xmlxxx
读取配置文件
<context:property-placeholder location="classpath:properties/*.properties" />
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
destroy-method="close">
<property name="url" value="${jdbc.username}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.username}" />
<property name="driverClassName" value="${jdbc.username}" />
<property name="maxActive" value="10" />
<property name="minIdle" value="5" />
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 数据库连接池 -->
<property name="dataSource" ref="dataSource" />
<!-- 加载mybatis的全局配置文件 -->
<property name="configLocation" value="classpath:mybatis/SqlMapConfig.xml" />
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.pinyougou.mapper" />
</bean>
此时
properties文件读取了,但是无法获取其属性值,造成连接数据库失败
解决方法:
<util:properties id="jdbcProperty"
location="classpath:properties/*.properties">
</util:properties>
<!-- 数据库连接池 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
destroy-method="close">
<property name="url" value="#{jdbcProperty['jdbc.url']}" />
<property name="username" value="#{jdbcProperty['jdbc.username']}" />
<property name="password" value="#{jdbcProperty['jdbc.password']}" />
<property name="driverClassName" value="#{jdbcProperty['jdbc.driver']}" />
<property name="maxActive" value="10" />
<property name="minIdle" value="5" />
</bean>