対象者(イメージ)
・javaちょっとわかる
・SpringBootよくわからない
・SpringBootよくわからないのに、引継ぎで保守担当者になってしまった
・SpringBootよくわからないのに、引継ぎで保守担当者になってしまった上に
いきなり改修案件を依頼されたあなた
例えば私の場合
Connecting to Heroku Data for Redis
https://devcenter.heroku.com/articles/connecting-heroku-redis#spring-boot
↑
着任早々、これの対応やらないといけなくなって嵌っていました。
AppConfig.javaに書くべき内容はわかるのに、置くべきフォルダがわからないという事態。
Configファイルどこに置くの?
探し方
下記の記事が非常に参考になりました。
こちらがなかったら一生解決しなかったかもしれないと言っても過言ではありません!(きっぱり)
https://blog.tagbangers.co.jp/2019/07/12/how-spring-deals-with-properties
1./configという名前のサブディレクトリ(file:./config/)
2.カレントディレクトリ(file:./)
3.クラスパスの/configパッケージ(classpath:/config/)
4.クラスパスルート(classpath:/)
検証
- 調査対象のシステムを"config"でgrepする
- ファイルが見つかった場合、そのファイルが上記いずれかのフォルダに置かれているか確認する
- 追加したいConfigファイルのパッケージを、2で確認したファイルと同じにする
- 追加したいConfigファイルを、2で確認したファイルと同じ物理フォルダに配置する
→→→ ビルド後、動作することを見届けて終了。
補足
参考文献
・spring アプリケーションプロパティ設定一覧(公式)
https://spring.pleiades.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties
結論に辿り着く過程でこちらのリファレンスもよくよく読みました。
ぷろぱてぃでいろいろできることがわかってよかったです。(社会科見学の感想)
出来ること出来ないことをわかっておくと後々の案件に役立つので、学習継続したいです。
・Spring Bootがプロパティファイルを読み込む方法に一同驚愕!! | Tagbangers Blog
https://blog.tagbangers.co.jp/2019/07/12/how-spring-deals-with-properties
一度引用していますが改めて貼らせてもらいます。
引用部分以外も簡潔にまとめていらっしゃるので、漏れなく勉強になります。
蛇足(サラリーマン向け情報)
・最初っから"@Configuration"などでGrepしておけばラクできたかもです。勉強になるかはともかく。
・前任者がいるならはずかしがらず前任者に聞きましょう///
どうしてもはずかしかったら(あるいは組織上直接連絡NGだったら)上司などにMTG設定してもらいましょう。
・BPさんの作ったところであれば、
契約担当者等のしかるべき人に連絡を取ってBPさんに調査依頼しましょう
・BPさんと既に契約が切れており、
新たに契約を結ぶことも難しく、
前任者の方も「管理業務だったのでコアな部分はわからない」と仰る場合があります。
その時は自分を頼りましょう。
以上です。