0

セッションを閉じた後、load メソッドを使用して学生オブジェクトをロードしています。休止状態 3.0 で学生名を出力しようとしています。しかし、LazyInitializationException が発生しました。プロキシを初期化できませんでした。

        Session session=HibernateUtil.currentSession();
    Transaction tx=session.beginTransaction();
    Object o1=session.load(Student.class,new Integer(2));
    tx.commit();
    session.close();
           log.info("Student name"+((Student)o1).getSname());

次に、別の属性 lazy="true" を追加しました。しかし、同じエラーがスローされました。この問題の解決方法。

4

1 に答える 1

1

これがメソッドの原則ですSession.load()。初期化されていないプロキシをエンティティに返します(エンティティがすでにセッションにロードされている場合を除く)。Studentの初期化されたインスタンスが必要な場合は、を使用しますSession.get()

于 2012-05-04T14:34:59.387 に答える