思考
-
Spring的配置文件中 是不是存在 需要经常修改的字符串呢?
回答: 存在,以数据库连接相关的参数。 -
经常变化的字符串,在Spring的配置文件中,直接修改 不利于项目的维护。
-
将经常修改的字符串,将他们提出来,放到另一个单独的文件中(properties)利于维护。
如何读取值呢-- ${key}
好与不好 是指代码的维护的好坏。 -
配置文件参数化:利于Spring的配置文件维护。
配置文件参数的开发步骤
以 如下为例 来修改配置文件。
截图是原来在Spring配置文件中的代码,与数据库连接配置,由于经常修改 可能会导致不可测的错误,如修改的同时 不小心改掉来其他地方的配置,导致重大失误。故以此为例,把一些经常修改的文件分离出来,提供一个专门的 小配置文件,配完后 再和原来的文件整合,即可。
步骤如下:
- 提供小的配置文件。 文件名只要以
.properties
结尾就可以。
db.properties
配置如下,key value 都是String类型。
//db.properties 配置文件
jdbc.driverClassName = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/adam?userSSl=false
jdbc.user = root
jdbc.password = 123456
- 在Spring的配置文件中,加入如下设置,与小的配置文件进行整合。
<context:property-placeholder location="classpath:/db.properties.xml"/>
context:
标签,引入
xmlns:context="http://www.springframework.org/schema/context"
属性:location
classpath
类路径
maven工厂 main
下有java
resources
。 在开发的时候分 java
resources
两个文件夹,java
下面写的是源码,resources
是配置文件,但是当编译后两个文件夹其实被是融合在一起的,在resources
下面的文件就等同于在java
文件夹下,即和 com
同级。
3. 在Spring配置文件中通过 ${key}
获取小配置文件里的值
<bean id="conn" class="com.youcan.factorybean.ConnectionFactoryBean">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="user" value="${jdbc.user}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
学习开心❤️
多读书
多读书
“It is not uncommon for people to spend their whole life waiting to start living.”
– Eckhart Tolle