[Spring] - Property注入
2024-10-19 11:47:04
使用Spring注入Properies文件方法:
1、src中新建一个settings.properties文件,内容如下:
db_driverClassName=com.mysql.jdbc.Driver
db_url=jdbc:mysql://127.0.0.1/test
db_username=root
db_password=root test_userName=Robin
test_age=
2、在spring的applicationContext.xml中加入这段:
<bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath*:settings.properties</value>
</list>
</property>
</bean>
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="ignoreResourceNotFound" value="false" />
<property name="properties" ref="configProperties" />
</bean>
之后的spring的xml配置中可以直接这样使用了:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${db_driverClassName}"/>
<property name="url" value="${db_url}" />
<property name="username" value="${db_username}" />
<property name="password" value="${db_password}" />
</bean>
3、新建一个class:Settings.java
package com.my.common; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; @Component
public class Settings {
private static Settings instance;
public static Settings getInstance() {
return instance;
}
public Settings() {
instance = this;
} @Value("#{configProperties['test_userName']}")
private String userName;
@Value("#{configProperties['test_age']}")
private int age; public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
然后可以在代码中这样调用了:
Settings.getInstance().getUserName()
最新文章
- js制作烟花效果
- transform的用法和注意事项
- 解决 iOS7 通过tag 找不到 UITableViewCell 的子控件
- oracle 定时备份
- Android 中View的绘制机制源代码分析 三
- CodeForces 1
- nRF52系列——Get started
- 本地化 NSLocal
- 【python3 自动化基础之pip】pip常用命令归类
- tomcat 端口修改和内存配置
- Appium同时连接多台手机进行测试(多线程)
- dp——poj1088(Description)
- webGL之three.js入门3--材料篇
- HDU 1455 Sticks(经典剪枝)
- Jmeter 处理Unicode编码转为中文
- 03.将MPP部署到开发板上
- ASP.NET 应用生命周期19个事件简介
- dedicated bearer
- 【ExtJS】FormPanel 布局(一)
- IIS配置PHP环境(快速最新版)(转载+自创)