質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Apache Maven 2

Apache Mavenは、ソフトウェアプロジェクトの管理ツールです。

Q&A

1回答

2077閲覧

JavaのSpring(mavenプロジェクト)の設定ファイルについての質問です。

kakikuke256

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Apache Maven 2

Apache Mavenは、ソフトウェアプロジェクトの管理ツールです。

0グッド

0クリップ

投稿2020/11/24 11:15


http://terasoluna.osdn.jp/javadoc/server-web_2.0.5.1/terasoluna-commons-2.0.5.1/jp/terasoluna/fw/util/PropertyUtil.html

ApplicationResourcesファイルに
add.property.file.1と書くことで設定ファイルを追加できると書いてありますが、

http://blog.tagbangers.co.jp/2019/07/12/how-spring-deals-with-properties


そのためsrc/main/resourcesディレクトリは4.クラスパスルートに含まれ、その配下にあるapplication.propertiesファイルはSpring Bootが自動で読み込んでくれます。

とあります。
つまりsrc/main/resources配下の設定ファイル(例えばdb.propertiesとか)はApplicationResourcesにaddしなくても良い、ということでしょうか?
(言い換えると書いても意味が無い?)


src/main/java
src/main/resources
src/test/java
src/test/resources
というフォルダ構成になっていますが、テスト実行(junit)の際はsrc/test/resources配下の設定ファイルが読まれ、src/main/resources配下の設定ファイルは読まれないという認識で合っていますでしょうか?
(実際の実行とテスト実行の際の設定ファイルは完全に別々で干渉し合わない?)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

  1. 正確に言うと「読み込み対象にできる」です。プロパティを読み込むためには、その後続にかかれている

@Configurationクラスに@PropertySourceアノテーションを付与し、任意のクラスパスを指定してあげるとそこにもプロパティを探しに行ってくれます。

です。

  1. SpringBootのデフォルトでは、src/main/resources の内容を元に、テスト時はsrc/test/resources の内容で"上書き"した状態になります。例えば、src/main/resources の中に application.propertiesがあり、その設定内容に

config.sample.key = 123456
config.another.value = aaaaaa

src/test/resources にて

config.sample.key = 999

と記述した場合、テスト実行時には config.sample.key は 999 で、 config.another.value は aaaaaa になります。

投稿2020/12/14 03:48

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問