连接数据库的代码方面的问题?

一个人的雨天 发布于 2013/05/15 15:09
阅读 188
收藏 0

java小白想问一下:

  ①  public static synchronized Connection getConnection()
            throws NamingException, SQLException {
        Context context = new InitialContext();
        DataSource ds = (DataSource) context
                .lookup("java:/comp/env/jdbc/DBPool");
        Connection conn = ds.getConnection();
        return conn;
    }

②public static synchronized Connection getConnection()
            throws NamingException, SQLException {
        Connection conn = null;
        try {
            Context context = new InitialContext();
            DataSource ds = (DataSource) context
                    .lookup("java:/comp/env/jdbc/DBPool");
             conn = ds.getConnection();
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            conn.close();
        }
        return conn;
    }

以上这两段代码:①没什么可说,可是我不想在方法上抛出异常而是想在程序里,就是用方法②,结果抛出空指针异常,也就是return conn时对应的conn是空的,但是我把“Connection conn = null;”挪到程序里变成“Connection conn = ds.getConnection();”则下面提示我conn没有定义,因此我想问一下,如果我想在内部抛出异常代码该怎么写?

此外:这个return到底应该return什么样的?对象,方法,值什么的都可以吗?

加载中
0
爱coding
爱coding
finally关闭conn的时候要判断一下conn!=null在关闭,然后在掉这个getConnection方法返回conn的时候,同样判断一下是否为空就ok了吧。。。
返回顶部
顶部