获取数据库连接-bboss persistent

简介:   bboss persistent下载地址 https://sourceforge.net/project/showfiles.php?group_id=238653&package_id=302766&release_id=647144 获取数据库连接-bboss persistentbboss persistent获取数据链接的两种方式1.

 

bboss persistent下载地址

https://sourceforge.net/project/showfiles.php?group_id=238653&package_id=302766&release_id=647144


获取数据库连接-bboss persistent
bboss persistent获取数据链接的两种方式
1.从缺省数据库连接池中获取数据库连接:
   
        java.sql.Connection connection = DBUtil.getConection();
        poolman中缺省的数据库连接池就是在poolman.xml文件中配置的第一个连接池
   
2.从指定的数据库连接池中获取数据库连接
   
        java.sql.Connection connection = DBUtil.getConection(dbname);
        dbname为poolman.xml中<dbname></dbname>节点中间指定的数据库连接池的名称,例如:
        <dbname>bspf</dbname>

 

3.获取数据库连接的事务性


通过上述两种方式获取到的connection根据不同的环境具有不同特点,主要有两种环境,一种是事务环境,另一种是无事务环境,分别描述如下:
事务环境是指在数据库操作执行的上下文中使用TransactionManager组件开启了一个事务的环境。
如果在事务环境下获取connection,那么connection的事务将与上下文中的事务结合在一起,也就是说connection的事务随着上下文环境事务的提交而提交,也随着上下文事务的回滚而回滚,而且connection的回滚也会导致整个上下文事务的回滚。同时connection的setAutocommit方法和close方法将不会影响上下文事务,就是说不会起作用。
在事务环境下获取数据库链接后,不需显示关闭connection,也不需要显示commit,但是需要显示rollback,事务的提交和链接的关闭由外部事务自动关闭和提交。
在没有事务的环境下获取connection时,connection具有原始的jdbc connection的所有特性和方法,这里就不多说了。

 

4 .直接使用数据库连接需要注意的地方

 

数据库连接池有效地管理着一组高度重用的数据库连接,如果通过持久层框架提供的组件(DBUtil,PreparedDBUtil,CallableDBUtil)操作数据库时,数据库连接的使用和管理由这些组件自动管理,无需应用程序去处理;但是如果程序员如果直接从数据库连接池中获取连接使用的话,那就一定要确保连接使用完毕后关闭该链接,释放操作过程中使用的所有资源,操作的一般标准模式为:

                Connection con = null;
                Statement stmt = null;
                ResultSet rs = null;
                try {
                       
                        con = DBUtil.getConection();
                        //use the con varable。
                        stmt = con.create Statement;
                        rs = stmt.execute some sql ;
                         
                       
                } catch (SQLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }
                finally
                {
                        if(rs != null)
                        {
                                try {
                                        rs.close();
                                } catch (SQLException e) {
                                        // TODO Auto-generated catch block
                                        e.printStackTrace();
                                }
                        }
                        if(stmt != null)
                        {
                                try {
                                        stmt.close();
                                } catch (SQLException e) {
                                        // TODO Auto-generated catch block
                                        e.printStackTrace();
                                }
                        }
                        if(con != null)
                        {
                                try {
                                        con.close();
                                } catch (SQLException e) {
                                        // TODO Auto-generated catch block
                                        e.printStackTrace();
                                }
                        }
                }

 

 

目录
相关文章
|
SQL Oracle 关系型数据库
springboot启动失败的问题('hibernate.dialect' not set)
一个常见的启动失败问题,在此做简单分析和记录
223 0
springboot启动失败的问题('hibernate.dialect' not set)
|
关系型数据库 Java 数据库连接
hibernate连接数据库配置
hibernate连接数据库配置 1.连接mySql,文件配置如下:  <?xml version="1.0" encoding="UTF-8"?>  <!DOCTYPE hibernate-configuration PUBLIC  .
1750 0
bboss session介绍
本文将主要探讨集群环境session管理模式,bboss session架构及特点以及bboss session的运用。让大家对bboss session有更加深入地了解。
1689 0
|
算法 Java 数据库连接
Hibernate 中配置C3P0连接池
    Hibernate自带的连接池算法相当不成熟。 它只是为了让你快些上手,并不适合用于产品系统或性能测试中。 出于最佳性能和稳定性考虑你应该使用第三方的连接池。只需要用特定连接池的设置替换 hibernate.connection.pool_size即可。
805 0
|
SQL 数据库 Java
bboss persistent 实现数据库更新操作
4.5 更新操作代码段    4.5.1预编译更新操作        PreparedDBUtil preDBUtil = new PreparedDBUtil();        int pk = 0;        String sqlstr = "update OFFICE_...
562 0
|
数据库 容器
bboss persistent事务管理介绍 (一)
bboss项目下载列表 在sourceforge访问地址为:https://sourceforge.net/project/showfiles.php?group_id=238653 bboss persistent的事务管理框架实现数据库的增、删、改、查事务管理,整个事务管理框架在下面的各节中详细介绍。
719 0
|
数据库 程序员
bboss persistent事务管理介绍 (二)
4.9.5 事务管理的相关接口 事务管理器:com.frameworkset.orm.transaction.TransactionManager ,每个 接口表: 名称 功能描述 说明     public voi...
693 0
|
数据库
bboss persistent事务管理介绍 (四)
l       不带返回值的模板方法使用实例   TemplateDBUtil.executeTemplate(               new JDBCTemplate(){                   /**                    * 整个e...
629 0
|
XML Java 数据库
bboss persistent事务管理介绍 (六)
4.9.9声明式事务使用实例 4.9.9.1声明式事务简介 声明式事务通过系统中基于java动态代理机制的aop框架实现,这个框架对业务组件进行有效的管理,包括业务组件的依赖注入,业务组件同步方法调用管理,业务组件拦截器的配置管理,业务组件方法事务控制。
858 0