Javaweb中jdk1.6以后版本连接数据库问题

问题描述:

        我现在我的是jdk1.8以上版本,刚开始学习java数据库连接的时候老师告诉我们从jdk1.6以后,连接数据库时可以不用Class.forName()加载驱动,于是作为一名超级懒死肥宅的我养成了连接数据库时不打“Class.forName()”方法的好习惯哭,的确在java se的学习和练习时的确没有用到这个方法照连,一切正常。

        知道今天学习javaweb开发的时候,问题来了。

数据库信息:


数据库连接代码:


注释掉的部分是最开始的时候没有打上的程序,(符合我养成的习惯微笑)于是乎在servlet类中:出现了如下错误



先开始以为是数据库操作写错了,于是写了一个小Demo测试了一下:


注:user.findByLoginNameAndPassword()方法是的数据库的操作上面的servlet也是调用这个方法。

这个测试结果是程序运行正常,说明数据库连接操作方面没有问题啊,(沃特法克, 那到底是哪里错了,真的是百思不得其姐儿)

测试运行结果如下:

天啊这倒是为什么啊,于是去请教了一位大佬,看了我的测试程序后也感觉没毛病啊,但就是servlet运行不起来,两个人一块找啊找啊,终于大佬发现我的数据库连接没有用到Class.forName()方法,于是让我加上,于是我就加上了试试,呵呵,居然成功了(加这个方法前我还义正言辞的给他说了jdk1.6以后就不用Class.forName()方法了,它会自动选择合适的驱动,没想到打脸了)。

加上Class.forName()后运行结果:


但是还是有点晕,于是去百度了一下:


对此我很无语,好吧我以后还是老老实实的加上吧。

解决方法:

加上Class.forName()方法委屈

猜你喜欢

转载自blog.csdn.net/qq_41119046/article/details/79963656