2017-03-16 16 views

答えて

1

変更がデータベースに反映されませんので、あなたは、任意のトランザクションを開いていません。

SessionFactory.openSession()を使用してセッションを作成すると、トランザクションは作成されないため、操作はトランザクションコンテキスト外で実行されます。変更を確認するには、新しいトランザクションを開始するか、継続的なトランザクションの一部として操作を実行する必要があります。

例:

Session sess = factory.openSession(); 
Transaction tx; 
try { 
    tx = sess.beginTransaction(); 
    //do some work 
    ... 
    tx.commit(); 
} 
catch (Exception e) { 
    if (tx!=null) tx.rollback(); 
    throw e; 
} 
finally { 
    sess.close(); 
} 

どちらかを使用するオブジェクトを保存するには、トランザクションまたは現在のシナリオでは、設定ファイルで次の変更を行います。

<property name="connection.autocommit">true</property> 
+0

ありがとうございました.. @emhmood memons – superman

+0

@supermanよろしくお願いします!答えを正しいとマークし、それをアップボートしてください。 –

関連する問題