微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jdbc oracle 封装类

一个高效的jdbc oracle封装类,能够对实际业务操作进行良好的支持。这篇文章将着重介绍这个封装类来解决实际开发中eclipse link的缺陷与不足。

jdbc oracle 封装类

对于首次使用jdbc的PHP开发者来说,封装类的使用是为了将调用方式自己封装以便重用和方便,而且用连接池来控制MysqL数据库连接,以后对于参数的维护、bug的调试等等也要更加方便。

首先,我们先看一下不使用封装类,一个简单的jdbc查询代码是怎样的:

public class TestSelect {
    public static void main(String[] args) throws sqlException{
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        try {
            //加载驱动类
            Class.forName("oracle.jdbc.driver.OracleDriver");
            //建立连接
            conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","username","password");
            //添加需要查询sql
            String sql = "SELECT * FROM test_table WHERE id = ?";
            pstmt = conn.prepareStatement(sql);
            //设置查询参数
            pstmt.setInt(1,1);
            //执行查询
            rs = pstmt.executeQuery();
            while(rs.next()){
                System.out.println(rs.getInt("ID")+","+rs.getString("NAME"));
            }
        } catch (ClassNotFoundException e) {
            e.printstacktrace();
        } finally{
            //关闭连接
            rs.close();
            pstmt.close();
            conn.close();
        }
    }
}

我们再看一下使用封装类的代码,能够发现封装类实际起到了相当于ORM的作用,不用写sql语句了:

public class TestSelect {
    public static void main(String[] args) throws sqlException{
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        try {
            //加载驱动类
            Class.forName("oracle.jdbc.driver.OracleDriver");
            //建立连接
            conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","+rs.getString("NAME"));
            }
        } catch (ClassNotFoundException e) {
            e.printstacktrace();
        } finally{
            //关闭连接
            rs.close();
            pstmt.close();
            conn.close();
        }
    }
}

可以看到我的封装类,使用Map存储一行数据,使用List>存储多行数据,以此来完成对传统的JDBC查询方式进行封装。

这里有一个好处是,我们可以自己实现一个小型的ORM框架,对于大量的数据查询和数据变更,可以选择封装类的方式简化开发,加快操作效率。

此外,数据库的连接基本都是以 JDBC 的方式进行访问的,而 JDBC 是开发代码访问数据库的不同体系并把其封装在 DataSource 中。在连接数据库的时候,需要手动完成 JDBC 的一些操作,而这其中包含了创建连接、预编译 Statement、处理结果和关闭连接等等,因此,我们可以使用封装类进行快速开发。

因此,一个好的jdbc oracle封装类,可为实际业务操作提供良好的支持,应当考虑到实际业务操作中遇到的常规问题:

  • 创建连接时,很容易出现数据库连接池溢出,应当做好相应的处理;
  • 使用或者修改指极易引起错误,并且会对业务造成巨大的影响,因此需要建立数据库异常处理机制;
  • 对于出现的异常,应当提供很好的方式提示错误。例如,需要提供详细的错误信息、记录异常日志、维护错误码等等;
  • 开发人员需要通过封装类预先设定好的接口访问数据库,这样可提高开发的效率;

综上所述,封装类的作用是快速开发,所以不同的封装类会根据不同的业务需求进行不同的封装,这就需要开发人员在实际开发中结合自身情况进行灵活选择。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐