J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(3)
何回かに分けてJ2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーションについて実際のコードを見ながら解説したいと思います。
変更前のサンプルソースはこちら
https://github.com/megascus/oi-webapp-sample/tree/initial
第一回はこちら
J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(1)
ここで一度Webアプリケーションの処理の流れについておさらいしたいと思います。
Webアプリケーションの一般的な処理の流れについて
例外はたくさんありますが、だいたい以下のような順番で処理が行われます。*1
- 認証、認可等全ての処理に対して行うべき共通処理
- 入力値の適切な形への変換、検証
- DB等のリソースへのアクセス
- 画面の表示
いろいろ簡略化されていますが、大体こんな感じです。
今回のアプリケーションでの処理の流れについて
大体こんな感じです。
- Servlet(Controller)にて認証、認可等全ての処理に対して行うべき共通処理を行う(今回は文字コードの設定のみ)
- ModelにてHttpRequestの値をJavaBeansに変換し、入力値の検証を行う
- Modelにてトランザクションを開始し、データベースへのアクセスを行う
- 画面の表示を行うため、Servlet(Controller)でjspにforwardする
現時点だと、ModelがHttpRequest/HttpResponseに依存する作りとなっているため、View層の入れ替えのみを行うことが難しくなっています。
なので、次回はまずView層とModel層の処理の分離をServlet/JSPベースのまま行いたいと思います。
*1:データの受け渡し等の処理は省略しています