亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Spring @Profile注解實現多環境配置

瀏覽:5日期:2023-09-10 09:19:11

一 前言

springboot中使用多環境開發如此簡單,你想知道spring中是如何實現的么?一起來學習吧!!你為什么不好好學習基礎,面試一直被diss呢?說到底還不是你認為都會了,其實你都不會,一問三不知!!

二 @profile實現多環境配置

2.1 @profile配置

使用@profile注解的目的是未了多環境開發,比如開發環境使用dev, 生產環境使用prod,就可以使用@Profile注解實現不同的開發環境使用不同的數據源;

@profile注解 使用說明:

spring3.2之前 @Profile注解用在類上

spring3.2 之后 @Profile注解用在 方法上

/** * @Author lsc * <p>spring3.2之前 @Profile注解用在類上 * spring3.2 之后 @Profile注解用在 方法上 * </p> */@Configurationpublic class DataSourceConfig { @Bean @Profile('dev') public DataSource devDataSource() { System.out.println(' dev DataSource !!'); BasicDataSource basicDataSource = new BasicDataSource(); basicDataSource.setDriverClassName('com.mysql.jdbc.Driver'); basicDataSource.setUrl('jdbc:mysql://localhost:3308/zszxz'); basicDataSource.setUsername('root'); basicDataSource.setPassword('1234'); return basicDataSource; } @Bean @Profile('prod') public DataSource prodDataSource() { System.out.println(' prod DataSource !!'); BasicDataSource basicDataSource = new BasicDataSource(); basicDataSource.setDriverClassName('com.mysql.jdbc.Driver'); basicDataSource.setUrl('jdbc:mysql://localhost:3306/zszxz'); basicDataSource.setUsername('root'); basicDataSource.setPassword('1234'); return basicDataSource; }}

如果你是在xml中配置,示例如下

<beans profile='dev'> <bean p:driverClassName='com.mysql.jdbc.Driver' p:url='jdbc:mysql://localhost:3306/zszxzb' p:username='root' p:password='1234'/></beans><beans profile='prod'> <bean p:driverClassName='com.mysql.jdbc.Driver' p:url='jdbc:mysql://localhost:3306/zszxzb' p:username='root' p:password='1234'/></beans>

2.2 激活方式

激活方式一

spring.profiles.active 激活方式 如果 spring.profiles.active 未配置, 使用spring.profiles.default激活方式 如果前面都為配置,就會加載沒有定義在profile中的bean;

激活方式二

在web.xml 中配置

<context-param><param-name>spring.profiles.active</param-name> <param-value>dev</param-value></context-param><servlet> <servlet-name>zszxzServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>spring.profiles.default</param-name> <param-value>dev</param-value> </init-param> <load-on-startup>1</load-on-startup></servlet><servlet-mapping> <servlet-name>zszxzServlet</servlet-name> <url-pattern>/</url-pattern></servlet-mapping>

激活方式三

在類上使用@ActiveProfiles注解

測試如下

@RunWith(SpringJUnit4ClassRunner.class)//創建spring應用上下文@ContextConfiguration(classes= DataSourceConfig.class)//加載配置類@ActiveProfiles('dev')public class ProfileTest { @Autowired private DataSource dataSource; @Test public void sheetTest(){ JdbcTemplate jdbc = new JdbcTemplate(dataSource); List<String> query = jdbc.query('select * from customer', new RowMapper<String>() { @Override public String mapRow(ResultSet rs, int rowNum) throws SQLException {return rs.getLong('id') + ':' + rs.getString('customer_name'); } }); // [19:知識追尋者, 20:知識追尋者, 21:知識追尋者, 22:知識追尋者, 23:知識追尋者] System.out.println(query); }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 男人j桶进女人p无遮挡动态图二三 | 8x华人永久免费 | 你懂的免费在线视频 | 中文字幕在线影院 | 18以下勿进色禁视频免费看 | 国产精品亚洲综合第一区 | 中文字幕久热在线精品 | 天天综合色网 | 91高清在线成人免费观看 | 欧美成人看片一区二区三区 | 亚洲午夜视频在线观看 | 在线视频综合视频免费观看 | 国产成人微拍精品 | 成本人h片3d动漫网站在线看 | 国产精品xxxav免费视频 | 亚洲成人一级片 | 成人18免费网站在线观看 | 国产精品自在自线免费观看 | 俄罗斯一级成人毛片 | 嫩草视频在线观看免费 | 亚洲国产亚洲片在线观看播放 | 色综合久久中文综合网 | 国产在线精彩视频二区 | 免费国产在线观看不卡 | 五月婷婷综合激情网 | 香蕉97超级碰碰碰免费公 | 97视频免费在线观看 | 在线观看国产精品日本不卡网 | 欧美日韩在线观看视频 | 97理论三级九七午夜在线观看 | 大学生毛片a左线播放 | 亚洲精品中文字幕乱码 | 中文字幕1区 | 国产成视频 | www.自拍| 免费看一级黄色毛片 | 夜夜爽日日澡人人 | 欧美三级毛片 | 黄色大片网站在线观看 | 国产中文字幕在线 | 1024国产视频|