Dao层中按照老师的方式写会报错啊,求各路大侠相助!小弟在此谢过!

来源:2-3 JDBC实战---搭建模型层 Ⅰ

qq_岳飞_0

2016-03-09 18:42

在GoddessDao层中我需要这样子来写Action中才不会报错: Connection conn=DriverManager.getConnection(URL, USER, PASSWORD);        如果按照老师这样写conn就为空,Connection conn=DBUtil.getConnection();        没有数据在里面:输出报错: Exception in thread "main" java.lang.NullPointerException        这是为什么呢?求大神指点迷津!

写回答 关注

4回答

  • 萌萌哒猫头鹰
    2016-05-16 21:56:41
    已采纳

    调试了下,发现调用的conn是空的,改写这个静态方法conn有值:

    public static Connection getConnection(){
    		if(conn==null){
    			try {
    				conn=DriverManager.getConnection(url, username, password);
    			} catch (SQLException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			}
    			return conn;
    		}
    		return conn;
    	}


    红袖侍读

    这个方法果然有效,但是为什么老师那样写会指针为空呢,但是老师的例子又运行正常

    2016-06-28 06:34:06

    共 1 条回复 >

  • 幻月教主3821413
    2016-11-17 20:01:10

    再第二次定义是,去掉Connection就行,不然重复定义的,返回的是空的那个conn

  • 骑着蜗牛定乾坤
    2016-03-13 09:58:04

    同意楼上的回答

  • 11知足11
    2016-03-10 16:25:43

    老师已经对getConnection()进行了封装,并在这个类中导入了DBUtil类,这样就可以直接调用了

    qq_菩提下... 回复初心丶

    应该就是你说的问题

    2016-12-03 21:54:25

    共 3 条回复 >

JDBC之 “ 对岸的女孩看过来”

一起领略JDBC的奥秘,为进一步学习集成框架打下良好的基础

99327 学习 · 856 问题

查看课程

相似问题