私は2年以来、playframeworkを使用してきました。フレームワークには "JPA in streads"機能があります。私はとても大好きでした。ModelをGenericDAOとして使用する
http://www.playframework.org/documentation/1.2.4/5things
これはサンプルコードです:
User connectedUser = User.find("byEmail", connected()).first();
...
connectedUser.delete();
...
connectedUser.save();
このaproachは、ヘルパーメソッドの多くを使用しています。そのうちのいくつかは静的メソッドです。 すべてのモデルファイルはモデルクラスとボイラーを拡張します。検索、保存、削除、フェッチを使用することができます。
現在、私はSpring MVC 3.1を使用しています。 MVCの使い方が気に入っています。 しかし、接続システムは少し複雑です。
私は多くの記事を読んでいます。サービス層、DAO層、モデル層を使用するものもあります。 それらのうちのいくつかは、ダオ層とモデル層のみを使用します。 各モデルオブジェクト、サービスクラス、およびサービスインターフェイスごとに、DAOインターフェイスとDAOクラスが作成されています。 そしてそれらのいくつかは汎用DAOクラスを使用します。
実際、私はこのすべての変形について少し混乱しています。
- なぜ私たちはDAOレイヤーを使用していますか?単一のhibernateUtilクラスと名前付き クエリは、CRUD操作では不十分です。
- プレイフレームワークのアプローチを使用しないのはなぜですか?
- なぜすべてのDAOクラスにインターフェイスを使用しますか?実装だけでは不十分ですか?
- なぜ不要なサービスレイヤーを使用するのですか?