日期:2014-05-20  浏览次数:20733 次

我想知道在Servlet中怎么通过jdbc连接mysql
刚学过jdbc 现在在JSP 和Servlet, 我想做一个注册和登陆的jsp页面, 我发现在通过Servlet处理登陆的时候调用jdbc 老是报空指针错误! 
我写的jdbc 用java application的方式运行是正常的,能正常从mysql中取得数据, 不是说Servlet中可以调用java bean吗  我的UserDaoJdbcImpl 这个类 里面有findUser() addUser() ...  是符合java bean规范的啊, 不知道 为什么 通过jsp页面登陆的时候 jdbc获取不了Connection,页面报空指针. 不知道是不是还缺什么配置, 我才刚刚接触,希望前辈指点. 开发环境:MyEclipse +Tomcat .

java.lang.NullPointerException
bbs.dao.jdbcImpl.DaoResult.find(DaoResult.java:71)
bbs.dao.jdbcImpl.UserDaoJdbcImpl.findUser(UserDaoJdbcImpl.java:19)
bbs.servlet.LoginServlet.doPost(LoginServlet.java:26)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

------解决方案--------------------
根据楼主所述,我猜测应该有以下几点:
1.你的jdbc驱动没有注册,因为在java application 运行下 有时候 不注册也是可以运行的,而在web下不行.
2.你的conn没有获取到,那么看看你的dataSource是否能获取到?
3.如果dataSource都获取不到,有可能你在引入properties文件时候出错,你打印下 看是否有值,如果有值,则应该没问题,如果没有值查看下配置路径(这点应该不存在,既然能在java application 下运行 这个配置应该是没问题的)
4.jdbc 或者说 dataSource所依赖的包你没有加入到lib中去(这是我认为LZ 最大可能出现的问题)

你在写jdbc项目的时候肯定 那5个包都是加进去了的, 不,是6个, 但是你在写web程序的时候你应该将这6个包放在你的Web-Root/lib 目录下, 这个是web应用所依赖的包,需要放进去. 楼主查看下吧.

如果按照我的方法还是没搞定,继续追问,如果搞定了麻烦给分,全手写滴............