HibernateコアAPI

933 ワード

一、session
sessionは、データベースを操作するオブジェクトsessionの特徴として理解できます.スレッドが安全ではありません.
1、オブジェクトをリレーショナル・データベースに保存するにはsessionを呼び出す必要がある様々な方法:
例:save()、update()、delete()、createQuery()など
2、sessionオブジェクトの入手方法
  • openSession
  • getCurrentSession getCurrentSessionを使用するにはhibernateが必要です.cfg.xmlファイルでの構成:
  •        (jdbc  )
      thread
            (jta  )
      jta
    

    3、openSessionとgetCurrentSessionの違い:
  • getCurrentSessionは、コミットまたはロールバック後に自動的に閉じられますが、openSessionは手動で閉じる必要があります.OpenSessionを使用して手動で閉じない場合は、接続プールが複数回オーバーフローします.
  • openSession新しいsessionオブジェクトを作成するたびに、getCurrentSessionは既存のsessionオブジェクトを使用します.

  • 二、transaction
    Hibernateのデータに対する操作はすべて物事にカプセル化され,デフォルトでは非自動コミット方式である.したがってsessionでオブジェクトを保存する場合、オブジェクトを開いたりコミットしたりしないと、オブジェクトは本当にデータベースに保存されません.