JDBC数据库连接需要注意的问题

1、jdbc.properties里面的value字段没有引号
这里写图片描述
2、加载驱动的时候,获取资源包名字的时候,路径不要写错,路径是以src为相对路径的
这里写图片描述
我这里的jdbc配置文件是在config的文件夹下面,所以通过resourceBundle获取资源包的时候要把路径写完整,如果直接在src下面就可以直接写jdbc

    //加载驱动
    //先利用资源包jdbc.properties得到资源
    private static ResourceBundle rb = ResourceBundle.getBundle("config.jdbc");-----》这里配置文件的路劲要写完整
    static{
        try {
            //利用反射得到驱动
            //通过驱动名称得到驱动(map映射)
            Class.forName(rb.getString("driver"));
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

写完了之后记得写一个测试函数测试驱动是否加载成功,是否获取到了链接

    JDBCUtil jdbc = new JDBCUtil();
    /**
     * 测试驱动连接成功
     */
    @Test
    public void testDriver(){
        Connection con = jdbc.getConnection();
        System.out.println(con);
    }

打印结果
oracle.jdbc.driver.T4CConnection@4bc107f4
3、实例化JDBCUtil的时候不能赋初值null否则会报空指针
JDBCUtil jdbc = new JDBCUtil();
错误做法:
Connection con = null;
PreparedStatement ps = null;
ResultSet rs = null;
private JDBCUtil jdbc = null;—-》这样肯定会报空指针啊
这里需要new一下,然后好调用里面的getconnection函数
和rs,con,ps不一样,他们初值可以设置为null,一旦建立了连接就不在是null

这里写图片描述
4、还有一个地方需要注意的是在向结果集中取数据的时候,每取出一行数据,然后就要封装为一个对象,然后紧接着就应该将封装好的对象加入到对象集中去
而不是等到while循环遍历完了,再将最后一个对象加入到结果集中
错误做法:
这里写图片描述
最后查出的只是最后一个封装的对象
这里写图片描述

正确做法:
这里写图片描述
那么这样我们取出的数据就是完整的了
这里写图片描述

posted @ 2017-08-19 20:57  crr121  阅读(290)  评论(0编辑  收藏  举报