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

您的位置:首頁技術(shù)文章
文章詳情頁

Spring基于注解讀取外部配置文件

瀏覽:67日期:2023-07-29 14:25:30

一、使用注解@PropertySource

指定路徑

使用 @PropertySource 指定配置文件路徑,支持 properties 和 XML 的配置文件,但不支持 yml。

屬性賦值

可以用注解 @Value 對(duì)屬性直接賦值、${}獲取配置文件的值、SPEL表達(dá)式#{}。

直接賦值:@Value('name jack') 讀取配置文件:@Value('${user.age}') 指定默認(rèn)值:@Value('${user.desc:default desc}') 表示如果沒有user.desc的配置,則賦值為default desc SPEL表達(dá)式:@Value('#{’${user.username}’?.toUpperCase()}') 表示將從配置文件讀取的值轉(zhuǎn)為大寫,?可以不填,表示如果沒有user.username的配置,則忽略

例子

config.properties內(nèi)容

ps.datasource.driverClassName=com.mysql.jdbc.Driverps.datasource.jdbcUrl=jdbc:mysql://localhost:3306/spring?useTimezone=true&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useUnicode=true&characterEncoding=utf-8&tcpRcvBuf=1024000&useOldAliasMetadataBehavior=true&useSSL=false&rewriteBatchedStatements=true&useAffectedRows=trueps.datasource.username=rootps.datasource.password=rootps.datasource.minIdle=1ps.datasource.maxPoolSize=10ps.datasource.connectionTimeout=3000ps.datasource.idleTimeout=300000

配置類

/** * 使用@PropertySource指定具體的配置文件,用@Value設(shè)置具體的屬性值, 不支持yml */@Component@PropertySource('classpath:config.properties')public class DbProperties { @Value('${ps.datasource.driverClassName}') private String driverClassName; @Value('${ps.datasource.jdbcUrl}') private String jdbcUrl; @Value('${ps.datasource.username}') private String username; @Value('${ps.datasource.password}') private String password; @Value('${ps.datasource.minIdle}') private int minIdle; @Value('${ps.datasource.maxPoolSize}') private int maxPoolSize; @Value('${ps.datasource.connectionTimeout}') private int connectionTimeout; @Value('${ps.datasource.idleTimeout}') private int idleTimeout; public String getDriverClassName() { return driverClassName; } public void setDriverClassName(String driverClassName) { this.driverClassName = driverClassName; } public String getJdbcUrl() { return jdbcUrl; } public void setJdbcUrl(String jdbcUrl) { this.jdbcUrl = jdbcUrl; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public int getMinIdle() { return minIdle; } public void setMinIdle(int minIdle) { this.minIdle = minIdle; } public int getMaxPoolSize() { return maxPoolSize; } public void setMaxPoolSize(int maxPoolSize) { this.maxPoolSize = maxPoolSize; } public int getConnectionTimeout() { return connectionTimeout; } public void setConnectionTimeout(int connectionTimeout) { this.connectionTimeout = connectionTimeout; } public int getIdleTimeout() { return idleTimeout; } public void setIdleTimeout(int idleTimeout) { this.idleTimeout = idleTimeout; } @Override public String toString() { return 'DbProperties{' +'driverClassName=’' + driverClassName + ’’’ +', jdbcUrl=’' + jdbcUrl + ’’’ +', username=’' + username + ’’’ +', password=’' + password + ’’’ +', minIdle=' + minIdle +', maxPoolSize=' + maxPoolSize +', connectionTimeout=' + connectionTimeout +', idleTimeout=' + idleTimeout +’}’; }}

二、使用Environment

/** * Environment可以獲取classpath下配置的屬性值,無需指定具體的配置文件。 不支持yml */@Componentpublic class UserProperties { @Autowired private Environment env; public String getUserName() { return env.getProperty('user.name'); } public String getPassword() { return env.getProperty('user.password'); }}

三、使用PropertiesLoaderUtils

try { Properties properties = PropertiesLoaderUtils.loadAllProperties('config.properties'); System.out.println(properties.getProperty('user.name')); } catch (IOException e) { e.printStackTrace(); }

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 国产农村妇女成人精品 | 国产精品福利一区二区 | 欧美一级做a爰片久毛片潮 欧美一级做a爰片免费 | 456亚洲人成影院在线观 | 老司机成人精品视频lsj | 亚洲免费色视频 | 成人黄色激情网站 | 久久亚洲国产最新网站 | 嫩草影院在线入口 | 狠狠色成人综合网图片区 | 久久综合丁香激情久久 | 精精国产xxxx视频在线 | 欧美wwww| 欧美日韩国产高清 | 大杳蕉精品视频在线观看 | 成年女人在线观看 | 欧美日韩中| 日本香蕉一区二区在线观看 | 欧美大片毛片aaa免费看 | 久久www免费人成精品香蕉 | 一区卡二区卡三区卡视频 | 婷婷黄色| 一级做a爰片久久毛片唾 | 亚洲精品国产高清不卡在线 | 欧美日韩国产高清视频 | 久久精品这里有 | 欧美一级片网址 | 亚洲专区视频 | 国产成人精品本亚洲 | 黄色一级网址 | 国产成人剧情 | 俄罗斯一级毛片免费视频 | 国产三级一区 | aaaa级日本片免费视频 | 国产成人一区在线播放 | 日韩免费小视频 | 亚州不卡| 免费黄色在线网址 | 国产乱码精品一区二区三 | 久热re在线视频精品免费 | 国产成年人网站 |