Hibernate openSession方法:开启一个session
发布时间:2020-12-15 02:40:03 所属栏目:Java 来源:网络整理
导读:openSession 方法用于通过 SessionFactory 创建 Session 示例,创建 Session 示例后,就可以通过创建的 Session 进行持久化操作。 语法1 创建数据库连接并打开一个 Session 示例。 openSession() 返回值:Session 示例。 示例 通过 openSession() 方法创建一
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) 参数说明:
返回值: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 参数说明:
返回值:Session 示例。 示例通过 SessionFactory 创建一个带有局部栏截器的 Session 示例,关键代码如下:SessionFactory sessionFactory = config.buildSessionFactory(); //MyIntereptor为自定义的实现Interceptor接口的拦截器 Interceptor it = new MyInterceptor(); Session session = sessionFactory.openSession(it); 语法4在给定的数据库连接中打开一个 Session 示例。openSession(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,""); }catch(Exception e){ e.printStackTrace(); } Session session = sessionFactory.openSession(conn); //打开Session (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |