spring外部化配置

例如

1 <bean id="dataSource"
2
3   class="....."
4
5   p:username="aa"
6
7   p:password="11"
8
9 >

以外部文件配置化的方式,配置属性。

在db.properties

jdbc.username=aa
jdbc.password=22

所以以上的bean可以写成

1 <bean id="dataSource"
2
3   class="....."
4
5   p:username="${jdbc.username}"
6
7   p:password="${jdbc.password}"
8
9 >

1.占位符变量替换

在spring中通过 配置占位符变量

 1 <!-- ignore 指定找不到文件 location指向的标签 不抛异常-->
 2 <!--  properties-ref 指向默认的属性 -->
 3 <context:property-placeholder
 4     location="file://myconfig.properties"
 5     ignore-resource-not-found="true"
 6     ignore-unresolvable="true"
 7     properties-ref="defaultConfiguration"        system-properties-mode="OVERRIDE"
 8 />
 9
10 <!--配置默认输入的属性-->
11 <util:properties id="defaultConfiguration"
12      <prop key="jdbc.url"> jdbc:mysql:......</prop>
13      <prop key="jdbc.username">aa</prop>
14      <prop key="jdbc.password">11</prop>
15 >

其中 属性 system-properties-mode=""

FALLBACK :如果不能从属性文件中解析占位符变量,使用系统属性

NEVER: 不使用系统属性来解析占位符变量

OVERRIDE:相对配置文件优先使用系统 属性

2.重写属性

例如硬编码如下

 <bean id="dataSource"

   class="....."

   p:username="aa"

   p:password="11"

 >
通过在spring中配置
1 <!--  以下会把硬编码的内容重写  -->
2 <component:property-override
3   location="classpath:/db.properties"
4
5 />

spring外部化配置

时间: 2024-08-04 18:40:16

spring外部化配置的相关文章

Spring配置文件外部化配置及.properties的通用方法

摘要:本文深入探讨了配置化文件(即.properties)的普遍应用方式.包括了Spring.一般的.远程的三种使用方案. 关键词:.properties, Spring, Disconf, Java 解决问题:如何正确使用.properties配置文件. 若是有其他代码需要此Spring属性配置,将Spring配置中的属性值设置迁移到外部的属性文件中,是必需的操作,这也可以使Spring配置文件更易读.在这里我们不仅要讨论Spring的外部化配置,还要深入探讨配置化文件(即.propertie

Spring/Spring Boot的外部化配置

不论是一个简单的Java程序或者是基于Spring或者Spring Boot框架实现的程序,都存在外部化配置信息的需求,例如一个抽奖程序需要制定随机器的种子值,或者与数据库建立连接的url/username/password,这些配置信息你都不希望直接固定写入程序中,因此需要一种方式能够外部化制定这些配置信息,在代码的对这些数据的使用点读取对应的配置来实现动态化程序的行为. 1.  环境变量(System.getEnv) Environment variables are set in the

Spring Boot 外部化配置(二) - @ConfigurationProperties 、@EnableConfigurationProperties

目录 3.外部化配置的核心 3.2 @ConfigurationProperties 3.2.1 注册 Properties 配置类 3.2.2 绑定配置属性 3.1.3 ConfigurationPropertiesAutoConfiguration 4.总结 3.外部化配置的核心 ????????接着上一章,<Spring Boot 外部化配置(一)> 3.2 @ConfigurationProperties 众所周知,当 Spring Boot 集成外部组件后,就可在 propertie

二、外部化配置--SpringBoot功能

一.外部化配置 Spring Boot将你的配置外部化,因此你可以在不同的环境下运行相同的代码.你可以使用properties文件,YAML文件,环境变量,命令行参数在外部配置.使用@Value注解可以直接将属性值注入到bean中,通过Spring的Environment抽象访问,或通过@ConfigurationProperties绑定到结构化对象. Spring Boot有多种外部配置方式,优先级如下: 当devtools开启时,$HOME/.config/spring-boot下devto

用Zookeeper作为Spring cloud的配置中心(转)

本文转自https://blog.csdn.net/CSDN_Stephen/article/details/78856323 Spring Cloud 配置中心的主流实现方式 Spring cloud configSpring cloud zookeeper config以下是这两者的简介 Srping Cloud Config Spring cloud config就是和git(svn)集成来实现配置中心.Spring cloud config分服务端.客户端和git(svn)三部分,服务端

spring事务的配置

前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的. 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSource.TransactionManager这两部分只是会根据数据访问方式有所变化,

手把手教你搭建SpringMVC——最小化配置

为什么需要Spring MVC 最开始接触网页的时候,是纯的html/css页面,那个时候还是用Dreamweaver来绘制页面. 随着网站开发的深入,开始学习servlet开发,记得最痛苦的就是servlet返回网页的内容是字符串拼接的html页面,整不好就无法显示.... 再到后来开学学习SSH,庞大的架构眼花缭乱.Struts繁杂的标签.hibernate搞不清楚的数据表,Spring不知道哪里搞错的bean. 最后随着发展,前端开始占有一席之地,nodejs风生水起,很多业务逻辑开始前置

Spring Boot 属性配置和使用

spring Boot 允许通过外部配置让你在不同的环境使用同一应用程序的代码,简单说就是可以通过配置文件来注入属性或者修改默认的配置. Spring Boot 系列 Spring Boot 入门 Spring Boot 属性配置和使用 Spring Boot 集成MyBatis Spring Boot 静态资源处理 Spring Boot - 配置排序依赖技巧 Spring Boot - DevTools 介绍 Spring Boot 支持多种外部配置方式 这些方式优先级如下: 命令行参数 来

Spring Boot 属性配置和使用(转)

Spring Boot 属性配置和使用 Spring Boot 允许通过外部配置让你在不同的环境使用同一应用程序的代码,简单说就是可以通过配置文件来注入属性或者修改默认的配置. Spring Boot 入门 请看:http://blog.csdn.net/isea533/article/details/50278205 Spring Boot 支持多种外部配置方式 这些方式优先级如下: 命令行参数 来自java:comp/env的JNDI属性 Java系统属性(System.getPropert