• Hibernate openSession方法:开启一个session

    openSession 方法用于通过 SessionFactory 创建 Session 示例,创建 Session 示例后,就可以通过创建的 Session 进行持久化操作。

    语法1

    创建数据库连接并打开一个 Session 示例。

    openSession()

    返回值:Session 示例。

    示例

    通过 openSession() 方法创建一个 Session 示例,关键代码如下:

    SessionFactory sessionFactory = config.buildSessionFactory();
    Session session = sessionFactory.openSession();

    语法2

    在指定的数据库连接中打开一个带有局部拦截器的 Session 示例。

    openSession(Connection connection,Interceptor interceptor)

    参数说明:

    • connection:一个数据库连接。
    • interceptor:一个 Session 范围的拦截器。

    返回值:Session 示例。

    示例

    创建一个通过 JDBC 连接 SQL Server 数据库的连接,并在该数据库连接中打开一个带局部拦截器的 Session 示例,关键代码如下:

    Connection conn = null;
    try{
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");  //加载数据库驱动
      String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_test
        Hibernate";  //定义连接数据库的url
        conn = DriverManager.getConnection(url,"sa","");  //获取数据库连接对象
    }catch(Exception e){
      e.printStackTrace();
    }  //MyIntereptor为自定义的实现Interceptor接口的拦截器
    Interceptor it = new MyInterceptor();
    Session session = sessionFactory.openSession(conn,it);  //打开Session

    语法3

    创建数据库连接,并打开一个带有局部拦截器的 Session 示例。

    openSession(Interceptor interceptor)throws HibernateException

    参数说明:

    • interceptor:一个Session范围的拦截器。

    返回值:Session 示例。

    示例

    通过 SessionFactory 创建一个带有局部栏截器的 Session 示例,关键代码如下:

    SessionFactory sessionFactory = config.buildSessionFactory();  //MyIntereptor为自定义的实现Interceptor接口的拦截器
    Interceptor it = new MyInterceptor();
    Session session = sessionFactory.openSession(it);

    语法4

    在给定的数据库连接中打开一个 Session 示例。

    openSession(Connection connection)

    参数说明:

    • connection:一个数据库连接。

    返回值:Session 示例。

    示例

    在给定的数据库连接中打开一个 Session 示例,关键代码如下:

    Connection conn = null;  //定义参数Connection对象
    try{
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");  //加载数据库驱动
      String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_testHibernate";
      conn = DriverManager.getConnection(url,"sa","");
    }catch(Exception e){
      e.printStackTrace();
    }
    Session session = sessionFactory.openSession(conn);  //打开Session

更多...

加载中...