歩行訓練

おいっちにー!

JSP依存を解消していく方針[第三回]

やだ、このプロジェクト、JSP大杉!

全部 JSP で書いてあるコードを潰す方針。

 今のプロジェクトは JSP が多すぎてテストを行うにも出来ない状況にある。

例えば、こういう構成のJSP(余裕の1000行越え)

  1. jsp のインポート文
  2. 謎の jsp:include
  3. Requset の取得
  4. データベースにアクセス
  5. なんか処理
  6. 表示部分

f:id:umetyuu:20141123143725p:plain

これが1ファイル1処理になっているため、何をやっているかはわかるが、なんでこうなっているのかさっぱりわからない状況になっている。

また、jsp のインクルードは自動的に補完されず直らない。また、Eclipseリファクタリング機能からも対象外であるクラスのクラス名を変更しても変更されない。

インクルードファイルはインクルード先では変数がすべてエラーで補完されないなどの問題がある。

ようするにやってられない。

(これはこれで動的コンパイルなためサーバ上でデバッグできると言う意見はある)

 

これを Spring boot 的な感じに直すと

  1. 特定のディレクトリ、ファイルにアクセスすると反応する Controllerクラス
  2. それぞれページごとの処理を行う Serviceクラス
  3. データベースのテーブルごとにクラス分けされ、データベースへのアクセスがまとめられた Repositoryクラス
  4. Controller からデータを渡すためのデータ型が定義されたクラス、俗にいうBean。 もしくはデータベースそのままのデータ型クラス
  5. そして表示部分だけが残ったJSP

f:id:umetyuu:20141123144517p:plain

な感じだろうか。

コントローラーを jsp のままで行くという方向もあるが、先に行った通り、リファクタリング機能がうまくはたらなかったりするので、やるならこのあたりにjspは残さない方がいいかもしれない。

 

ああ、web.xmljsp も無い spring boot で作り直したい。

Spring Framework 4プログラミング入門
 

 

 

Spring MVC/Roo プログラミング入門