Javaでデータベース永続性を使用する最も簡単な方法は何ですか?私はインターネット上に多くのフレームワークが存在することを知っていますが、自分自身とそのデザインパターンによってパーシスタンスレイヤーを開発する方法を学ぶのは面白いかもしれません。どこから始めれば?書籍、ウェブサイト、ハウツー、コード例などデータベース内のJava永続性
2
A
答えて
2
私はSunのJava Persistence API(JPA)から始めます。ここにはgood starter articleがあります。
0
1
2
3
1
以前の回答に加えて、DAO(データアクセスオブジェクト)パターンをチェックします。データアクセスのコードをどのように整理するかを反映しています。
0
あなたが学習の練習を探しているなら、クレイグ・ラーマンさんApplying UML and Patterns.
alt text http://graysmatter.codivation.com/content/binary/applyingumlandpatterns.jpg
のコピーを取得しようとするがありLarmanは軽量のデータベースの永続性マッパーの設計の章を提示します。控えめな永続性モデルに基づいたHibernateとは異なり、彼はドメインオブジェクトをPersistentObjectから拡張する必要がある目立ったフレームワークを提示します。各永続ドメインクラスのマッパークラスも記述する必要があります。コードジェネレーションコンセプトなしのActiveRecordパターン。
0
このbook(エンタープライズアプリケーションアーキテクチャのパターン)は一見非常に良いようです。私はそれを調べて、パーシスタンスエンジンを開発するためのデザインパターンは非常に包括的です。なぜ、いつ、どのように使用するのかを示します。
3
4
まず、既存の機能とソースコードを見てみましょう。ここにカップルがあります(アルファベット順にいくつか挙げてください)
- DbUtils:非常に単純なJDBC用ラッパーです。多分ここでアイデアを探し始めるでしょう!
- EBean:JPA自体
- Hibernateと同様に:データベース を照会するためのH2の独自ドメイン固有言語:JaQu
- JaQuの優しいフォーク:重くJavaのJPA仕様
- iciqlに影響を与えたデファクトスタンダード
- JDBI:idiommatic Javaでのリレーショナルデータベースアクセスを公開する
- JDO:Apache Javaデータオブジェクト
- jOOQ:SQLを直接Javaでドメイン固有の言語としてモデリングする
- MyBatis:「世界で最も普及しているSQLマッピングフレームワーク」。 [原文](旧iBatisの)
- QueryDSL:多くの異なったバックエンド(だけでなく、SQL)
- QuaereとSQLのような流暢API:QueryDSL
そしてすぐにと同様に、あなたはこの回答を編集することができますし、独自のフレームワークを追加!
関連する問題
- 1. 接続されているデータベースの確認 - Java永続性API
- 2. AJAX/Javaの永続性
- 3. フロー内の永続性
- 4. データベースなしのシンプルなpojo永続性
- 5. 電子メールスレッド内のカスタムヘッダーの永続性
- 6. 私は永続化できるメモリ内Javaデータベース
- 7. .NETとJAVA(永続性/ Webサービス/マーシャリング)
- 8. DDD(java)集約ルーツと永続性
- 9. c#データベースの永続性のためのオブジェクトの等価性
- 10. MBeanの永続性
- 11. ステートマシンの永続性
- 12. Backbone.jsデータ永続性
- 13. facebookチャットボックス永続性
- 14. SQL永続性サービス
- 15. 永続性はデータベース内のエンティティからテーブルを作成しません
- 16. のappengine - 永続Java
- 17. Javaの永続ストアJavaランタイムストア
- 18. Java内のスレッド間の可変永続性に関する問題
- 19. データベースのSpringでのBLOBの保存Hibernateの永続性
- 20. Qtペイントの永続性
- 21. 角2データの永続性
- 22. Builderのパターンと永続性
- 23. Android WebView - フォームデータの永続性
- 24. チェックボックス値の永続性
- 25. サービスファブリック - ステートフルサービスの永続性
- 26. Polyglot永続性の例
- 27. elmのデータ永続性
- 28. Pythonレジストリの永続性
- 29. Silverlightオブジェクトの永続性
- 30. Java Cron4J永続タスク
私は、JDBC上でiBatisのようなSQLマッパーを使用すると、raw JDBCを使用するよりはるかに簡単であることを発見しました。これは、HibernateやJPAのようなORMにも当てはまるはずです。これらのすべてのアプローチでは、フレームワークによって多くの詳細が処理されます。これには、接続プーリングやSQLインジェクション攻撃の防止などの最適化が含まれます。 –
価値があるのは、私は本当にjDBI(http://jdbi.org/)が好きです。それはJDBCのすべての厄介な部分を処理し、必要に応じてデータのバインディングを許可しますが、それ以外の場合はそのままにしようとします。 – StaxMan