一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - springboot讀取自定義配置文件節點的方法

springboot讀取自定義配置文件節點的方法

2021-05-05 11:39神牛步行3 Java教程

這篇文章主要介紹了springboot讀取自定義配置文件節點的方法,本文給大家介紹的非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下

今天和大家分享的是自定義配置信息的讀取;近期有寫博客這樣的計劃,分別交叉來寫springboot方面和springcloud方面的文章,因為springboot預計的篇章很多,這樣cloud的文章就需要等到很后面才能寫了;分享這兩種文章的原因主要是為了方便自己查找資料使用和對將要使用的朋友起到便捷作用;

•@value標記讀取(默認可直接讀取application.yml的節點)
•實體映射application.yml的節點
•實體映射自定義配置文件的節點
•實體映射多層級節點的值

@value標記讀取(默認可直接讀取application.yml的節點)

  首先在默認application.yml配置文件中自定義如下節點信息:

?
1
2
shenniu:
name: 神牛003

  然后通過@value標記來直接獲取屬性值,為了更好的展示數據到界面上定義了一個/conf/name接口:

?
1
2
3
4
5
6
7
@value("${shenniu.name}")
  private string name;
 
  @getmapping("/conf/defname")
  public string getdefname() {
    return this.name;
  }

  運行后效果如:

springboot讀取自定義配置文件節點的方法

實體映射application.yml的節點

  要用實體類映射出默認配置文件值,僅僅只需要加一個屬性名稱前綴就行了,當然這僅僅針對于application.yml默認文件里面的屬性:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@configuration
@configurationproperties(prefix = "shenniu")
public class shenniuconf {
  private string name;
  public string getname() {
    return name;
  }
  public void setname(string name) {
    this.name = name;
  }
  private url url;
  public url geturl() {
    return url;
  }
  public void seturl(url url) {
    this.url = url;
  }
  private string des;
  public string getdes() {
    return des;
  }
  public void setdes(string des) {
    this.des = des;
  }
  public static class url {
    private string blogurl;
    public string getblogurl() {
      return blogurl;
    }
    public void setblogurl(string blogurl) {
      this.blogurl = blogurl;
    }
  }
}

  實體類我多增加了幾個屬性,為了后面測試方便;要對application.yml做配置映射只需要加上 @configurationproperties(prefix = "shenniu") 標記,prefix的值對應自定義配置文件屬性的前綴;這里增加/conf/name接口輸出映射出對象的值:

?
1
2
3
4
5
6
@autowired
  private shenniuconf shenniuconf;
  @getmapping("/conf/name")
  public string getname() {
    return shenniuconf.getname();
  }

  同樣得到了和@values注解一樣的效果,這就表示實體和配置文件自定義屬性匹配成功了,主要實體屬性名稱應該和配置文件節點名稱保持一致;

springboot讀取自定義配置文件節點的方法

實體映射自定義配置文件的節點

  讀取application.yml中屬性值很簡單,有時候需要自定義自己的配置文件,如這里我的my.properties,文件內容如下:

?
1
2
shenniu.des=我愛祖國
 shenniu.url.blogurl=http://www.a.com

  映射的實體還是用上面的,不過實體上需要增加注解 @propertysource("classpath:my.properties") 表示自定義文件源,并且同樣需要prefix來指定節點前綴;我們增加如下展示接口:

?
1
2
3
4
5
6
@autowired
  private shenniuconf shenniuconf;
  @getmapping("/conf/des")
  public string getdes() {
    return shenniuconf.getdes();
 }

springboot讀取自定義配置文件節點的方法

實體映射多層級節點的值

  通常自定義配置節點都有層級關系,那我們實體有怎么來獲取到不同層級的屬性值呢,事實上只需要在實體類里面通過類層級關系來表示就行了,如上面shenniuconf實體里面的url實體類屬性;

springboot讀取自定義配置文件節點的方法

  這里添加一個測試接口:

?
1
2
3
4
5
6
@autowired
 private shenniuconf shenniuconf;  
 @getmapping("/conf/myconf")
public shenniuconf getblogurl() {
   return shenniuconf;
 }

  不出意外能得到如下結果:

  springboot讀取自定義配置文件節點的方法

git地址: https://github.com/shenniubuxing3    nuget發布包:https://www.nuget.org/profiles/shenniubuxing3

總結

以上所述是小編給大家介紹的springboot讀取自定義配置文件節點的方法,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

原文鏈接:http://www.cnblogs.com/wangrudong003/p/9090161.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品视频第一区二区三区 | 国产精品视频在线观看 | 亚洲精品国偷拍自产在线观看蜜臀 | 欧美日韩高清完整版在线观看免费 | 亚洲高清免费在线观看 | 青青草原国产一区二区 | 男人疯狂进女人下部视频动漫 | 成年人视频在线播放 | 国产精品国色综合久久 | 99国产情在线视频 | 俄罗斯三级完整版在线观看 | 精品一久久香蕉国产线看观 | 美人老师沦为 | 日产乱码卡1卡2卡三卡四在线 | 国产成人精品一区二三区在线观看 | 亚洲国产欧美目韩成人综合 | 深夜福利入口 | 艾秋麻豆果冻剧传媒在线播放 | 欧美老骚 | 精品高潮呻吟99AV无码 | 91精品综合| 国产精品九九免费视频 | 好大好湿好硬好爽好深免费视频 | 日韩一区国产二区欧美三 | 黑人与欧洲女子性大战 | 国内精品久久久久影院男同志 | 动态图啪啪120秒免费看 | free性日本 | 欧美日韩国产一区二区三区不卡 | 欧美美女被爆操 | avtt天堂网手机版亚洲 | 舔大逼 | 吃大胸寡妇的奶 | 天天干夜夜玩 | 九九大香尹人视频免费 | chinese壮直男gay老年人 | 欧美人在线一区二区三区 | 风间由美一区二区av101 | 美女脱了内裤张开腿亲吻男生 | 和肥岳在厨房激情 | 武侠古典久久亚洲精品 |