在程序运行提示org.hibernate.exception.GenericJDBCException: Cannot open connection错误

typeExceptionreportmessagedescriptionTheserverencounteredaninternalerror()thatprevent... type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.hibernate.exception.GenericJDBCException: Cannot open connection
org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:126)
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:114)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)
org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)
org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:161)
org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1577)
org.hibernate.loader.Loader.doQuery(Loader.java:696)
org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
org.hibernate.loader.Loader.doList(Loader.java:2232)
org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129)
org.hibernate.loader.Loader.list(Loader.java:2124)
org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:401)
org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363)
org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:1149)
org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:835)
dao.impl.UserDAOHibernateImpl.findByUserName(UserDAOHibernateImpl.java:18)
web.UserServlet.service(UserServlet.java:75)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

note The full stack trace of the root cause is available in the Apache Tomcat/5.5.27 logs.

在网上看了很多 但都没有解决 求助 急!!!!
展开
 我来答
强临花开
2019-02-15 · TA获得超过4795个赞
知道答主
回答量:146
采纳率:33%
帮助的人:8万
展开全部

这次问题是数据库ip没有配置好,网上的数据库连接池都是在tomcat的配置文件下设置的,我们只需重新设置好即可。

解决方案:

1、使用“WIN+X”打开系统菜单,选择“命令提示符(管理员)”,打开命令提示符。

2、取到域名,这里的域名可以用ping  XXX(你配置的网址获得)。我这里就拿百度的这个网址进行举例www.baidu.com。输入“ping  www.baidu.com”。

3、等待数据的返回,我们会收到来自XXX(ip)的回复,我这里的是14.215.177.39,如下图。

4、我们将这个地址14.215.177.39放入连接数据库的url(jdbc.url),由域名ping成IP地址替换上去,完美解决问题。

扩展资料:

网上的数据库连接池都是在tomcat的配置文件下设置的,我们做的项目连接池是在spring里面配置的,是基于SSH框架,有spring来管理hibernate。

IEIOA
推荐于2019-09-02 · TA获得超过2.2万个赞
知道答主
回答量:16
采纳率:100%
帮助的人:5542
展开全部

出现这个错误的原因及解决方法:

1、数据库没启动;这时你可以简单检验一下,可以拿一个你肯定没问题的项目运行一下,看数据库里表的数据。也可以可以打开数据库客户端,如果客户端能访问,比如SQLSERVER的查询分析器或者Mysql的SQLyog,则代表数据库正常,排除此可能。

2、检查一下hibernate的各项配置有没有问题,包括数据库方言,数据库驱动类,数据库用户名 ,用户密码,数据库连接URL(看数据库名是否正确),(比如我的就是用户名密码是root,但是项目设置的是remain)。

3、数据库连接驱动包不正确、不匹配,或者甚至没有。 检查lib目录下是否有对应数据库的jar包。在以上操作完成之后重启电脑看看有没有解决问题,如果没有解决问题,建议请专业的工作人员检测维修。

扩展资料:

出现这种情况的原因还有:

1、你的配置文件数据库用户名或者密码错误。

2、你的数据库地址写错了。

3、jar包少了,可能hibernate的包少了,也可能少了数据库驱动。

4、数据库服务没打开。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一眼万万年_
推荐于2017-10-14 · TA获得超过1355个赞
知道小有建树答主
回答量:310
采纳率:0%
帮助的人:169万
展开全部
看提示就很清楚了:Cannot open connection,不能打开连接,你用的什么数据库?应该有cause by吧,把最后那个cuase by贴出来,问题会更明显,现在估计有下面几种可能
1、你的配置文件数据库用户名或者密码错误。
2、你的数据库地址写错了。
3、jar包少了,可能hibernate的包少了,也可能少了数据库驱动。
4、数据库服务没打开。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cj1985318
2011-04-29
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
org.hibernate.exception.GenericJDBCException: Cannot open connection
非常明显,没有获取到连接,也就没有获取到sessionfactory。请检查配置是否正确 。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式