SAStruts+S2JDBCを使っての感想と覚書
SAStrutsについて
xmlの設定ファイルを記述しなくてよくなったのが影響するのか、
開発初期段階でよくある、Exceptionなどがでて、各メンバーが対応方法が
不明といった事態が少なかった。
※メンバーのスキルレベルはStruts経験アリという前提
綺麗なURL用のRoutingFilterを極力避ける方向の方がいいのではないか。
先日のシーサーカンファレンスでひがやすをさん曰くパフォーマンスに影響があったりするらしいです
原因の詳細は分からないですが・・
URLのマッピング処理が重たくなったりするときがあるのでしょうか・・
実際slim3では、きれいなURLの実装のための処理がなくなっていた。
バッチに関しては、今回本数が少ないのとCronで使うレベルなので
バッチ用のPJ分けを行うほどでもなかった。Quartsを使ってタスク管理
などを行うことは今回していないので、Quartzなどで管理したい場合は別途
考えないといけない
共通で前処理を行う場合には以下が考えられる
- filterで実装
- リクエストプロセッサーで実装
- アノテーションで実装
認証画面が少なく、認証以外の画面が多い場合は、
フィルターレベルでいいかなと
リクエストプロセッサーでの実装は、個人的には、フレームワークが
提供するクラスの拡張はできるだけ避けたいという個人的な考えからあんまりしたくないです。
アノテーションで実装も、ログインしたユーザの権限が複雑であるとかいう
場合に関しては考えようかと思うけど、基本的にはフレームワーク
で提供しているアノテーション以外は使いたくないです。
なので結論として
認証処理がログイン画面のみとかで、認証処理が必要なアクションと、
そうでないアクションとかはできるだけ設計でアクションパスとかを
分けるような作りにして、フィルターで行うのがいいのかなと。
ログイン後の権限が複雑な場合に関しては、
仕様にあわせてリクエストプロセッサーなり、アノテーション
なりで検討するでいいかなと。この辺は皆どうしてるのでしょうか?
S2Jdbcについて
DBチームとかないのであれば、流れるインターフェースを
使って実装するのはいいと思いますが、
DBチームとかわかれて実装のレイヤを分けるのであれば、
SQLファイルを使って作った方がいいかなと
思いました。どちらも併用するのはどうなんだろ?
ソースを後で追うのが大変になってしまうような気がする。