最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot如何指定某些類優(yōu)先啟動

 更新時間:2019年09月29日 11:41:17   作者:ping9527  
這篇文章主要介紹了SpringBoot如何指定某些類優(yōu)先啟動,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

一、需求

1、項目中對某些IP地址和端口做了限制,只有寫在配置文件的內(nèi)容(ip)才可以訪問項目。

2、在進行測試案例運行時保證讀取配置文件中ip和port的類(CbeConfig)得提前運行。

二、工作

1、如下的測試時肯定不行

@Test
  public void getCbeTest(){
    CbeConfig cbeConfig = new CbeConfig();
    System.out.println("IP是" + cbeConfig.getIp());
    System.out.println("Port是" + cbeConfig.port);
  }

2、保證CbeConfig類在程序運行起來的那一刻先存在,先寫一個讀取配置的類,程序運行起來后讀取到配置后,然后再將讀取的參數(shù)設置到另一個類(CbeConfigAfter)中,以后提取參數(shù)。都使用CbeConfigAfter。

CbeConfigBefore類實現(xiàn)ApplicationRunner接口的run方法

package com.example.demo;
import lombok.Getter;
import lombok.Setter;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
@Component
public class CbeConfigBefore implements ApplicationRunner {

 @Value("${cbe.ip}")
 public String ip;


 @Value("${cbe.port}")
 public Integer port;

 @Override
 public void run(ApplicationArguments applicationArguments) throws Exception {
  System.out.println("我第一個啟動");
  System.out.println("哈哈ip" + ip);
  System.out.println("哈哈port" + port);
  CbeConfigAfter cbeConfigAfter = CbeConfigAfter.getInstance();
  cbeConfigAfter.setIp(ip);
  cbeConfigAfter.setPort(port);
  System.out.println("設置完畢");
 }

 public String getIp() {
  return ip;
 }

 public void setIp(String ip) {
  this.ip = ip;
 }

 public int getPort() {
  return port;
 }

 public void setPort(int port) {
  this.port = port;
 }
}

CbeConfigAfter類寫成單例模式

package com.example.demo;
import lombok.Getter;
import lombok.Setter;
public class CbeConfigAfter {

 public String getIp() {
  return ip;
 }
 public void setIp(String ip) {
  this.ip = ip;
 }
 public int getPort() {
  return port;
 }
 public void setPort(int port) {
  this.port = port;
 }
 String ip;
 int port;
 private static CbeConfigAfter cbeConfigAfter;
 private CbeConfigAfter (){}
 public static synchronized CbeConfigAfter getInstance() {
  if (cbeConfigAfter == null) {
   cbeConfigAfter = new CbeConfigAfter();
  }
  return cbeConfigAfter;
 }
}

測試類

package com.example.demo.controllerTest;

import com.example.demo.CbeConfigAfter;
import com.example.demo.CbeConfigBefore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.TestPropertySource;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class CbeTest {
 @Test
 public void getCbeByAfterTest(){
  CbeConfigAfter instance = CbeConfigAfter.getInstance();
  System.out.println("IP是" + instance.getIp());
  System.out.println("端口是" + instance.getPort());
 }

 @Test
 public void getCbeBeforeTest(){
  CbeConfigBefore cbeConfig = new CbeConfigBefore();
  System.out.println("IP是" + cbeConfig.getIp());
  System.out.println("Port是" + cbeConfig.port);
 }
}

此時再運行g(shù)etCbeByAfterTest測試類,OK,搞定。

雖然搞定,但是我還是仍有心有疑慮,請有幸讀完的同志挑挑毛病。謝謝。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot整合SSE的項目實踐

    springboot整合SSE的項目實踐

    SSE是一種可以主動從服務端推送消息的技術(shù),本文主要介紹了springboot整合SSE的項目實踐,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • Jenkins發(fā)送測試報告郵件過程詳解

    Jenkins發(fā)送測試報告郵件過程詳解

    這篇文章主要介紹了Jenkins發(fā)送測試報告郵件過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • java?Map接口子類HashMap遍歷與LinkedHashMap詳解

    java?Map接口子類HashMap遍歷與LinkedHashMap詳解

    這篇文章主要介紹了java?Map接口子類HashMap遍歷與LinkedHashMap詳解,Map接口下的集合與Collection接口下的集合,它們存儲數(shù)據(jù)的形式不同,感興趣的小伙伴可以參考下面文章詳細內(nèi)容介紹
    2022-06-06
  • springboot結(jié)合前端實現(xiàn)網(wǎng)頁跳轉(zhuǎn)功能實例

    springboot結(jié)合前端實現(xiàn)網(wǎng)頁跳轉(zhuǎn)功能實例

    今天處理Springboot統(tǒng)一異常攔截的時候,遇到了頁面跳轉(zhuǎn)的問題,這篇文章主要給大家介紹了關(guān)于springboot結(jié)合前端實現(xiàn)網(wǎng)頁跳轉(zhuǎn)功能的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • Eclipse的Debug調(diào)試技巧大全(總結(jié))

    Eclipse的Debug調(diào)試技巧大全(總結(jié))

    這篇文章主要介紹了Eclipse的Debug調(diào)試技巧大全(總結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • Java中將多個PDF文件合并為一個PDF的方法步驟

    Java中將多個PDF文件合并為一個PDF的方法步驟

    這篇文章主要給大家介紹了關(guān)于Java中將多個PDF文件合并為一個PDF的方法步驟, Java PDF合并是指將多個PDF文件合并成一個PDF文件的過程,需要的朋友可以參考下
    2023-09-09
  • 解析JPA的視圖查詢問題

    解析JPA的視圖查詢問題

    這篇文章主要是對JPA的視圖查詢問題進行了詳細的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • Java實現(xiàn)圖片旋轉(zhuǎn)、指定圖像大小和水平翻轉(zhuǎn)

    Java實現(xiàn)圖片旋轉(zhuǎn)、指定圖像大小和水平翻轉(zhuǎn)

    這篇文章主要為大家詳細介紹了Java實現(xiàn)圖像旋轉(zhuǎn),指定圖像大小,水平翻轉(zhuǎn)圖像,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • 詳解用JWT對SpringCloud進行認證和鑒權(quán)

    詳解用JWT對SpringCloud進行認證和鑒權(quán)

    這篇文章主要介紹了詳解用JWT對SpringCloud進行認證和鑒權(quán),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • Java基礎(chǔ)之static的用法

    Java基礎(chǔ)之static的用法

    這篇文章主要介紹了Java基礎(chǔ)之static的用法,文中有非常詳細的代碼示例,對正在學習java基礎(chǔ)的小伙伴們有很大的幫助,需要的朋友可以參考下
    2021-05-05

最新評論

额济纳旗| 上饶县| 浮梁县| 息烽县| 乳山市| 广安市| 保定市| 凤庆县| 景谷| 枝江市| 苏州市| 竹溪县| 镇雄县| 涟水县| 南康市| 涡阳县| 本溪市| 古田县| 珲春市| 清远市| 德化县| 资溪县| 康定县| 平原县| 卢龙县| 安西县| 新余市| 清苑县| 万山特区| 监利县| 木里| 万全县| 武山县| 吴堡县| 乌兰察布市| 辽阳县| 乌什县| 巨野县| 绥中县| 霍邱县| 兴业县|