详解Spring加载Properties配置文件的四种方式
时间:2019-04-15
本文章向大家介绍详解Spring加载Properties配置文件的四种方式,主要包括详解Spring加载Properties配置文件的四种方式使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一、通过 context:property-placeholder 标签实现配置文件加载
1、用法示例: 在spring.xml配置文件中添加标签
复制代码 代码如下:
<context:property-placeholder ignore-unresolvable="true" location="classpath:redis-key.properties"/>
2、在 spring.xml 中使用配置文件属性:
<!-- 基本属性 url、user、password --> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" />
3、在java文件中使用:
@Value("${jdbc_url}") ivate String jdbcUrl; // 注意:这里变量不能定义成static
二、通过 util:properties 标签实现配置文件加载
1、用法示例: 在spring.xml配置文件中添加标签
复制代码 代码如下:
<util:properties id="util_Spring" local-override="true" location="classpath:jeesite.properties"/>
2、在spring.xml 中使用配置文件属性:
<property name="username" value="#{util_Spring['jdbc.username']}" /> <property name="password" value="#{util_Spring['jdbc.password']}" />
3、在java文件中使用:
@Value(value="#{util_Spring['UTIL_SERVICE_ONE']}") private String UTIL_SERVICE_ONE;
三、通过 @PropertySource 注解实现配置文件加载
1、用法示例:在java类文件中使用 PropertySource 注解:
@PropertySource(value={"classpath:redis-key.properties"}) public class ReadProperties { @Value(value="${jdbc.username}") private String USER_NAME; }
2、在java文件中使用:
@Value(value="${jdbc.username}") private String USER_NAME;
四、通过 PropertyPlaceholderConfigurer 类读取配置文件
1、用法示例:在 spring.xml 中使用 <bean>标签进行配置
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:redis-key.properties</value> </list> </property> </bean>
2、 PropertyPlaceholderConfigurer 配置方法,等价于 方式一,用法参考方法一。
五、 还可以使用 org.springframework.beans.factory.config.PropertiesFactoryBean 加载,这里不再逐一列举了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- 统计代码行数的方法梳理
- 如何在不影响asp.net默认安全性的前提下使用ckeditor/fckeditor?
- Linux下防御DDOS攻击的操作梳理
- Android新手之旅(8) ListView的使用
- 更换Ubuntu源为国内源的操作记录
- Android新手之旅(8) ListView的使用
- CKEditor/CKFinder升级心得
- Docker容器学习梳理-Dockerfile构建镜像
- 再谈web开中几种经典的大文件上传组件
- Nginx负载均衡中后端节点服务器健康检查的操作梳理
- Linux系统下CPU使用(load average)梳理
- 基于组件的.NET技术(5)
- Silverlight与WPF中BeginInvoke的差异
- Linux下部署SSH登录时的二次身份验证环境记录(利用Google Authenticator)
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Go 使用标准库 net/http 包构建服务器
- 基于prometheus的监控方案
- Gin 学习之自定义服务器配置信息
- 经验总结 | 关于 reNgine 自动化网络侦查框架的国内安装与报错的解决方法
- CS学习笔记 | 24、C2lints实例演示
- CS学习笔记 | 23、malleable命令
- ASP.NET Core 基于声明的访问控制到底是什么鬼?
- scATAC-seq建库原理,质控方法和新R包Signac的使用
- R语言可视化学习笔记之ggridges包绘制山峦图
- 06 . ELK Stack + kafka集群
- 使用DockerFile构建运行GoWeb
- windows版gbc:基于enginx的组件服务器系统paas,可用于mixed web与websocket game
- 01 . RPC简介原理及用Go实现一个RPC
- 17 . Go之网络编程
- 01 . Go框架之Beego简介部署及程序流程分析