読者です 読者をやめる 読者になる 読者になる

せてぃーずノート

Javaのイベント参加レポートとかを書いたりします。

JJUGナイトセミナー(11/27)レポート その2

前回の続き

おっぴろげDevOps

どう作って、どう運用しているまでのJava EE導入事例。
RESTAPI経由でのジョブワーカーのアプリケーション。

http://bit.ly/jjug-camellia

使っている要素はJAX-RSCDIJPA
Lombokを使っているので、コードの記述量はほんとうに少ない。

JPAはabstractのベースエンティティと実装クラスの組み合わせ。
JAX-RSの応答で使用するため、表示させたくない項目はJAXBの@XMLTransientを使用している。
入力項目はBeanValidationでチェック
Cliteriaを使ってクエリを作っているが、Java8のLambdaでかけるように書いてある。
将来的なLambda対応を今から考えておくのは重要。

テストでは、コンテナを使ったテストは重いため、できるだけユニットテストに寄せる。
JPAユニットテストは、テスト用のpersistenceXMLを作るのではなく、Mapで必要な属性を上書きする方式。

運用は2つのインスタンスから構成されるクラスタ
24365を実現している。
モジュールのアップデートは

「DBのカラム変更を伴うアップデートは?」との質問に対しては「ダブルライトで対応している」とのことでした。