在之前的SSH框架搭建的博客中,配置数据库连接时,直接将数据库的用户名、密码等信息写在了Spring配置文件中(如下图)。这样导致的结果是,如果数据库密码修改了,就需要修改Spring配置文件;如果有多个项目都使用了这个数据库用户名和密码,那么维护的成本将非常高。
Spring为我们提供了解决方案。我们可以新建一个配置文件db.properties,文件内容如下:
dataSource=com.mchange.v2.c3p0.ComboPooledDataSource driverClass=com.mysql.jdbc.Driver jdbcUrl=jdbc:mysql://localhost:3306/entry_exit_mgt user=root password=Urie_308然后修改Spring配置文件:
(1)添加读取properties文件的支持。
<!-- 读取properties文件 --> <bean id="propertiesConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="classpath:db.properties"></property> <!-- 也可以写成另一种形式,可以读取多个properties文件 --> <!-- <property name="locations"> <list> <value>classpath:db.properties</value> </list> </property> --> </bean>(2) 修改数据库配置部分
<!-- 配置数据源,这里配置了连接数据库的各项参数 --> <bean id="dataSource" class="${dataSource}"> <property name="driverClass" value="${driverClass}"></property> <property name="jdbcUrl" value="${jdbcUrl}"></property> <property name="user" value="${user}"></property> <property name="password" value="${password}"></property> <!-- 数据库连接池的一些属性也配置在这里,这里先不配置 --> </bean>