この記事では、参照用のSpring Boot Static変数注入構成ファイルの特定のコードを共有しています。特定のコンテンツは次のとおりです
スプリング静的可変注入
春に直接静的変数値を注入することはサポートされていません。コードを見てみましょう:
@component(value = "kafkaconfig")@configurationProperties(prefix = "baseconfig")public class kafkaconfig {private static string logbrokerList; public static string getLogBrokerList(){return logbrokerList; } public static void setLogBrokerList(String LogBrokerList){kafkaconfig.logbrokerList = logbrokerList; }}構成ファイルは次のとおりです。
Baseconfig:LogBrokerList:10.10.2.154:9092 LogTopic:Test Monitortopic:Monitor
Projectの開始時にLogBrokerList変数を使用します
@SpringBootApplicationPublic class Application {public static void main(string [] args)throws exception {springApplication.run(application.class、args、args); system.out.println( "config static test:" + kafkaconfig.getlogbrokerlist();}}}}実行結果:
構成静的テスト:null
解決
Springのセットインジェクション法を使用して、非静的なセッターメソッドを介して静的変数を注入します。この方法で変更できます。静的変数は、構成した情報を取得できます。
@component(value = "kafkaconfig")@configurationproperties(prefix = "baseconfig")public class kafkaconfig {private static string logbrokerlist; public static string getlogbrokerlist(){return logbrokerlist;}@value( "$ {baseconfig.logbrokerlist}") logbrokerList){kafkaconfig.logbrokerlist = logbrokerList;}}実行結果:
構成静的テスト:10.10.2.154:9092
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。