【译】Spring 4 @Profile注解示例】的更多相关文章

前言 译文链接:http://websystique.com/spring/spring-profile-example/ 本文将探索Spring中的@Profile注解,可以实现不同环境(开发.测试.部署等)使用不同的配置.同样,除了使用注解也会给出基于XML配置的示例作为对比. 假设你有一个应用涉及数据库交互,你可能希望在开发环境上使用mysql数据库,在生产环境上使用oracle数据库,那么使用Spring的Profiles,可以轻松达到这个目的,接下来我们将给出一个实例详细介绍这种情况.…
首先我们来看看spring官方文档对这个注解的解释: The @Profile annotation allows you to indicate that a component is eligible for registration when one or more specified profiles are active 这个注解可以根据当前的环境,动态的激活和切换一系列组件的功能 结合之前的一些知识,做一个例子,在我们开发的时候,可能在开发的时候连接的是开发环境的数据库,在测试的时候…
http://blog.csdn.net/he90227/article/details/52981747 摘要: spring Boot使用@Profile注解可以实现不同环境下配置参数的切换,任何@Component或@Configuration注解的类都可以使用@Profile注解. 例如: @Configuration @Profile("production") public class Produc... Spring Boot使用@Profile注解可以实现不同环境下配置…
前言 译文链接:http://websystique.com/spring/spring-propertysource-value-annotations-example/ 本篇文章将展示如何通过@PropertySource 和 @Value注解从配置文件中读取属性值. 同样,我们也会讨论Spring的Environment接口,还会看到使用XML配置和使用注解的对比. Spring的@PropertySource注解主要是让Spring的Environment接口读取属性配置文件用的,这个注…
在容器中如果存在同一类型的多个组件,也可以使用@Profile注解标识要获取的是哪一个bean,这在不同的环境使用不同的变量的情景特别有用.例如,开发环境.测试环境.生产环境使用不同的数据源,在不改变代码的情况下,可以使用这个注解来切换要连接的数据库.     步骤如下:  1. 在bean上加@Profile注解,其value属性值为环境标识,可以自定义: 2. 使用无参构造方法创建容器 3. 设置容器环境,其值为第1步设置的环境标识 4. 设置容器的配置类 5. 刷新容器   注:2.4.5…
引言:使用 spring.profiles.active 参数,搭配@Profile注解,可以实现不同环境下(开发.测试.生产)配置参数的切换 一.根据springboot的配置文件命名约定,结合active可在不同环境引用不同的properties外部配置 参考官方文档: 根据文档描述,我们除application.properties外,还可以根据命名约定( 命名格式:application-{profile}.properties)来配置,如果active赋予的参数没有与使用该命名约定格式…
1.通过设定Environment的ActiveProfile来设置当前context所需要的环境配置,在开发中使用@Profile注解类或方法,达到不同情况下选择实例化不同的Bean. 2.使用jvm的spring.profiles.acitve的参数来配置环境 3.web项目设置在Servlet的context pramater servlet2.5一下的配置 <servlet> <servlet-name>dispatcher</servlet-name> <…
一.为什么会想到定义@SpringCloudProfile这样的注解 首页提一下@Profile注解:它主要用与Spring Boot多环境配置中,指定某个类只在指定环境中生效,比如swagger的配置只允许开发和测试环境开发,线上需要禁止使用. 使用@Profile进行如下配置: @Configuration @EnableSwagger2@Profile({"dev", "test"}) public class Swagger2Config { @Bean p…
写在前面 在实际的企业开发环境中,往往都会将环境分为:开发环境.测试环境和生产环境,而每个环境基本上都是互相隔离的,也就是说,开发环境.测试环境和生产环境是互不相通的.在以前的开发过程中,如果开发人员完成相应的功能模块并通过单元测试后,会通过手动修改配置文件的形式,将项目的配置修改成测试环境,发布到测试环境进行测试.测试通过后,再将配置修改为生产环境,发布到生产环境.这样手动修改配置的方式,一方面增加了开发和运维的工作量,而且总是手工修改各项配置文件很容易出问题.那么,有没有什么方式可以解决这些…
引入相关包: <properties> <spring.version>3.0.5.RELEASE</spring.version> <aspectj.version>1.6.11</aspectj.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <a…