老问题,Hibernate连接池,在网上没找到对口的解决方案,在此求救

harryzyp 2007-04-10 05:01:25
用的是MyEclipse开发,连接池是在Tomcat的server.xml中配置,如果采用JDBC的话一切正常,但只要换连接池就出现以下错误:
javax.servlet.ServletException: Cannot open connection
org.hibernate.exception.GenericJDBCException: Cannot open connection

数据库是Mysql4.1,驱动mysql-connector-java-5.0.4-bin.jar放在/common/lib下,因为用JDBC时一切正常,我怀疑应该是连接池的代码可能有误,server.xml中连接池代码是这样的:
<Context path="/SHLogin" docBase="F:\collection\MyEclipse\SHLogin\WebRoot" debug="0" reloadable="true" crossContext="true">
<Resource name="jdbc/hibernate" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/hibernate">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>***</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost:3306/hibernate</value>
</parameter>
</ResourceParams>
</Context>

MyEclipse中配置的hibernate.cfg.xml如下:
<session-factory>
<property name="show_sql">true</property>
<property name="connection.datasource">java:comp/env/jdbc/hibernate</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<mapping resource="com/haxin/login/vo/Person.hbm.xml" />

</session-factory>

到底哪有错呢,请高手能帮我看看
...全文
295 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
harryzyp 2007-04-13
  • 打赏
  • 举报
回复
怎么就没人了呢,自己顶一下
zghmu007 2007-04-11
  • 打赏
  • 举报
回复
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
-----------------------------------------
这里配置错了 换成ORACLE的
xokao 2007-04-11
  • 打赏
  • 举报
回复
jdbc:oracle:thin:@192.168.2.10:1521:orcl...........你用的mysql数据库,这里是oracle的驱动。。。
harryzyp 2007-04-11
  • 打赏
  • 举报
回复
楼上两位都看错了,你们看到的是 xp1204(深圳不是个好地方,我却还是要待下去) 发表的他的配置情况让我参考,最上面才是我发表的,里边有server.xml配置情况和hibernate.cfg.xml配置
许飘大叔 2007-04-10
  • 打赏
  • 举报
回复

我的hibernate.cfg.xml

<property name="connection.datasource">java:comp/env/jdbc/anycare</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="jndi.url"></property>


我的是在datasourse是在tomcat的项目的xml中配的,不是server.xml中配的,
比如我的项目是bpm,在D:\Tomcat 5.0\conf\Catalina\localhost下有个bpm.xml

<?xml version='1.0' encoding='utf-8'?>
<Context docBase="bpm" path="/bpm" workDir="work\Catalina\localhost\bpm">
<Resource name="jdbc/anycare" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/anycare">
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.2.10:1521:orcl</value>
</parameter>
<parameter>
<name>password</name>
<value>bpm10</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>username</name>
<value>bpm</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
</ResourceParams>
</Context>

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧