为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

正在回答

4 回答

调试了下,发现调用的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;
	}


3 回复 有任何疑惑可以回复我~
#1

红袖侍读

这个方法果然有效,但是为什么老师那样写会指针为空呢,但是老师的例子又运行正常
2016-06-28 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

同意楼上的回答

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~
#1

红袖侍读

楼主的问题并非无法调用getconnection 方法,而是调用后报错,显然人家是已经导过DBUtil包的,不然编译都通不过
2016-06-28 回复 有任何疑惑可以回复我~
#2

初心丶 回复 红袖侍读

问题出在静态初始块那里,conn为空
2016-08-26 回复 有任何疑惑可以回复我~
#3

qq_菩提下的笛声_03984636 回复 初心丶

应该就是你说的问题
2016-12-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JDBC之 “ 对岸的女孩看过来”
  • 参与学习       99327    人
  • 解答问题       856    个

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

进入课程

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信