iBatisを使用してドメインカテゴリCategoryにマッピングされたテーブルカテゴリがあります。このクラスをJavaBeanとして使うべきですか?製品のBeanには、このカテゴリの製品数などの他の属性が必要です。これらの属性は、ドメインクラスCategoryの一部ではありません。私がCategoryをBeanクラスとして使用しても、それはまだ関連していますか?この場合、CategoryBeanのようなラッパークラスを提供する方が良いでしょうか?コードの複雑さが増しますか?ibatisドメインクラスをjavabeanとして使用する必要がありますか?
0
A
答えて
1
この議論にはいくつかの側面があります(それは議論です)。
まず、Javaソフトウェア開発サークルには、ソフトウェアの高度な階層化が必要であるという一般的な見方があります。これは、ドメインオブジェクトを引き出してプレゼンテーションオブジェクトに変換することを意味します。それはさらに進んで、間にサービスオブジェクトや他のものを持つことができます。
これは、多くの場合、有益な利益のために定型的なプロパティのコピーがたくさんあります。
自分自身に質問する1つの質問は、次のとおりです。Ibatisから出てくるオブジェクトがプレゼンテーションに適していますか?あるいは、たとえば、テーブルごとに1つのクラスを持つという意味では一般的ですか?
軽量なJavaアプリケーションは、Ibatisがビューレイヤーが必要とする正確な情報を返すクエリを実行し、それを遠くに渡すような方法を選択する権利があります。今では、大規模なアプリケーションでスケーラビリティの問題があります。これらのことが何百、何千というものになる可能性があるので、そのような状況では別のアプローチが必要になるかもしれません。そういう場合でも、何千ものプレゼンテーションオブジェクトで済むでしょう。ピーターはロバートにポールを支払う?
私は個人的にIbatisでテーブルごとの1クラスのアプローチを嫌います。それは強さではありません。これはHibernateとJPAの強みです。 Ibatisの強みは、SQLだけでなく何かを簡単に引き出すことができるということです。それがあなたに問題を起こさない限り、その方法を使用してください。
関連する問題
- 1. Ibatis "接続/データソースを独立して管理する必要があります
- 2. InitCommonControlsEx()とInitCommonControls()を使用する必要がありますか?
- 3. @synthesizeをまだ使用する必要がありますか?
- 4. ルーティングとしてElasticSearch _typeを使用する必要があります
- 5. djangoとAngularJSを使用してJWTでログインする必要があります
- 6. factoryを使用してオブジェクトを更新する必要がありますか?
- 7. httpライブストリーミングを使用してビデオをブロードキャストする必要がありますか?
- 8. スレッドクラスを使用して自己をキャプチャする必要がありますか?
- 9. SQLiteDatabaseを使用してデータを保存する必要がありますか?
- 10. Fragmentsを使用してLoaderManagerを取得する必要がありますか?
- 11. デリゲートを使用してオブジェクトを解放する必要がありますか?
- 12. HTML5構文を使用する必要がありますか?
- 13. DreamweaverのSpryを使用する必要がありますか?
- 14. RecyclerViewでCursorLoaderを使用する必要がありますか?
- 15. DynamoDBでEC2を使用する必要がありますか?
- 16. オンラインゲームにTCPを使用する必要がありますか?
- 17. Rails 3.1:CoffeeScriptを使用する必要がありますか?
- 18. MVVMにDataTemplatesを使用する必要がありますか?
- 19. addTestDeviceを使用する必要がありますか?
- 20. なぜvalue.lengthを使用する必要がありますか?
- 21. Parcel.writeSerializableをParcelable.writeToParcelで使用する必要がありますか?
- 22. フォントでwebpackを使用する必要がありますか?
- 23. /csv:WriteAll()でError()を使用する必要がありますか?
- 24. 私はsingletableviewを使用する必要がありますか?
- 25. どのレイアウトマネージャを使用する必要がありますか?
- 26. ユニットテストでAutoMapperを使用する必要がありますか?
- 27. mysql_close(接続)を使用する必要がありますか?
- 28. インテントサービスを使用する必要がありますか?
- 29. f:paramを使用する必要がありますか?
- 30. アクセサーを使用する必要がありますか?