問題タブ [spring-environment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Bean の環境が統合コンテキストのソースからのプロパティを認識しないのはなぜですか?
Spring Integration webapp 構成で、プロパティ プレースホルダーを追加しました。
これはそのファイルの内容です:
http inbound-channel-adapter でその値を使用しようとしたため、この構成が機能すると確信しています。
プロパティ値を変更すると、フロントエンド アプリケーションがエンドポイントに到達できなくなります。
ただし、さらにコンテキストでは、次のように構成されたエンドポイントがあります。
プロパティ値を読み取りたい場所:
しかし、コンソールには次のように表示されます。
Web アプリ環境全体の一部となる XML でプロパティ ソースを宣言したことがあると思いますが、何が欠けているのでしょうか? 別の場所でソースを宣言する必要がありますか?
次の注釈を追加すると、次のことに気付きました。
プロパティは正しく見つかったので、これは単なる構成の問題だと思います。
重要な場合は、web.xml
統合を構成する部分を次に示します。
アップデート
この回答の一部に従って、XML ファイルから削除<ctx:property-placeholder>
し、次の Bean を追加しました。
これで、Bean と XML ファイルの両方がプロパティを確認できるようになりました。
spring - 起動アプリで複数の yml ファイルからプロパティを読み込めません
環境に依存するいくつかのプロパティが必要なマイクロサービスがあるため、application.yml、application-dev.yml、application-int.yml などを使用しています.....
起動時に私は合格spring.profiles.active=myprofile
し、関連するものapplicaiton-myprofile.yml
が一緒にロードされapplicaiton.yml
ます。これまでのところ、すべて正常に動作しています。
しかし、環境に固有ではないプロパティのいくつかを独自のビジネスモジュールに分類したいので、 application.yml applicaiton-.yml とともに、さらにいくつかの yml ファイルから spring にプロパティをロードしたいと考えていますENVIRONMENT
。そのため、正しい BusinessConfigProperties クラスを作成できます@ConfigurationProperties
。
これを達成するために、以下のように spring.config.location にそれらの yml ファイル名を追加しようとしました
構成名も指定しました。すべての yml ファイルは /config フォルダーにあります。
しかし、これらのファイルに記載されているプロパティを読み取ることができません。
org.yaml.snakeyaml.Yml
YML マップを読み取ってクラスをインスタンス化するには定型コードが多すぎる abut でファイルを手動でロードすることで、これを克服できます。春でこれを達成する簡単な方法があるはずです。
アップデート
上記を更新しました。
しかし、これも機能していません。プロファイルを使用していません。上記のファイルとともに、applicaiton-<profile>.yml
環境固有のプロパティが既にあるためです。そしてspring.profile.active
、起動時のjvm引数で環境名として渡します。また、これらのファイルに application-<added_profile>.yml で始まる名前を付けたくありません