SWINGを使用して、モノユーザーデスクトップアプリケーションを開発しています。私はjava.sql apiを使用したこの種のアプリケーションについて少し経験があり、それがまったく快適でないことを理解しました...
私が初めてJPAを使用しようとしている新しいアプリケーションで、必要なほとんどすべてを理解させる多くのチュートリアルを読みましたが、実際のJavaデスクトップアプリケーションの良い例が見つかりませんでした。
次のアーキテクチャを使用することを考えていますが、私が正しいかどうかわかりません...
MyPersistenceUnitクラスを作成すると思います:
public class MyPersistenceUnit {
private static EntityManagerFactory factory;
private static EntityManager entityManager;
public static void initiate(){
factory=Persistence.createEntityManagerFactory("PU_Name");
entityManager=factory.createEntityManager();
}
public static EntityManager getEntityManager() {
return entityManager;
}
public static void close(){
entityManager.close();
factory.close();
}
}
initialize()メソッドが最初に呼び出され、close()メソッドはアプリケーションが閉じられたときに呼び出されます。
アプリケーションの実行中、すべてのトランザクションはgetEntityManager()インスタンスを介して実行されます。インスタンスはアプリケーションのどこからでもアクセスできます。JSEアプリケーションについて私の理解が正しければ、取得したエンティティマネージャーは拡張された永続化コンテキストを持ち、エンティティマネージャーが閉じられない間、すべてのエンティティを管理状態に保つことができます。
何か足りないのか分からないので、どんなチップでも大歓迎です
derby組み込みデータベースでeclipselinkプロバイダーを使用していることに注意してください。
ありがとう
私のデザインを再考した後、次のように変更することにしました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加