概要
SpringBootでアプリを作るときに最初から知っておきたかった情報の自分用メモです。
こういう記事は限定共有記事にすることが多いんですが、わりと役に立つ情報だと思うので公開します。
MessageSource
プロパティファイル
DB
OneToOne、ManyToManyあたりが怠い。情報少ないし意図しない挙動になることが多いので、あまり使いたくない。
NativeQueryでテーブル結合したときはselect句に new hoge.package.HogeDto(fuga, piyo)みたいな感じで記述すると行ける。よく使う機能なのに情報少ない。
ページング
ログ
非同期処理
lombok
@Data,@Getter,@Setter,@AllArgsConstructor,@NoArgsConstructor,val、@Slf4jあたりを使ってる。
RestTemplate
API呼び出しは失敗することが多いのでリトライ処理を入れておくのが無難。
builder.setRetryHandler(new DefaultHttpRequestRetryHandler(3, true));
フォーマッター、チェックスタイル
チームメンバーが増えたときは設定できたか目視で確認したほうがいい。
設定されてないと、後で困る。
例外ハンドラ
サービス化
再起はDocker化するのかな?
静的リソースのキャッシュ対策
残課題
・APIのレスポンスボディのクラス
・APIのステータスコード
・ページング実装するときに、Thymeleafで1個目の画面を作るのが大変。
・デプロイ