1

休止状態のクエリ SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); に問題があります。sess =sessionFactory.openSession(); 私はすべての関数でそれを呼び出しますが、それを回避するにはどうすれば1回だけsessionFactoryを作成できますか

4

1 に答える 1

0

アプリケーションごとに 1 回インスタンスを作成し、参照を保存して、それにアクセスするためのメソッドを提供するだけです。これを行う正しい方法と場所は、アプリケーションによって完全に異なります。

これは 1 つの方法です。

public final class SessionFactoryProvider {
    private static final SessionFactory sessionFactory;
    static {
        sessionFactory = new Configuration().configure().buildSessionFactory();
    }

    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }

    private SessionFactoryProvider() {
    }
}

さらに、追加の情報収集を追加し、静的初期化ブロックから発生する可能性のある例外をキャッチして再スローすることもできます。

于 2012-07-27T08:50:12.917 に答える