如题,我的问题并不复杂,就是连不上数据库。我用的是hibernate2.1去连Oracle10g,没用什么jbuilder或eclipse,用最简单的办法在我的tomcat里部署了一个应用。
可是最后的jsp页面报错:net.sf.hibernate.exception.GenericJDBCException: Cannot open connection 很郁闷!
我没用hibernate时,连接是正常的,所以,我的连接字符串、我的驱动应该是没问题的!只是不知是不是我的配置文件里的写法有问题?或者hibernate2.1不支持Oracle10g?要3.0?
不知用过的人有没有连接Oracle10g配置的例子???
可是最后的jsp页面报错:net.sf.hibernate.exception.GenericJDBCException: Cannot open connection 很郁闷!
我没用hibernate时,连接是正常的,所以,我的连接字符串、我的驱动应该是没问题的!只是不知是不是我的配置文件里的写法有问题?或者hibernate2.1不支持Oracle10g?要3.0?
不知用过的人有没有连接Oracle10g配置的例子???
解决方案 »
- 怎么读取修改XML文件
- socket无法从服务端判断是否客户端已启动。
- jxl 导出excel模板的问题
- 求登录和分页的方法和servlet的写法,有自己的Dao类,要根据提供的Dao类写的。
- ArrayList里放数组,怎么调出来各个数组里的元素?
- 如何从一个程序员发展为项目经理(职业规划问题)
- NEAN里返回了一个结果集,怎么返回一个记录总数,我的不对,看看
- 明明有文件,还报java.io.FileNotFoundException,急需解决
- 新手上路,望各位多加指点!
- 为什么我的frameset中的jsp文件总是无法显示?
- 调试中出现的问题?
- jsp提交汉字到oracle数据库出现乱码!
看包都打进去了没!
包应该都有了!
数据库肯定也没啥问题!我不是说过,在没有hibernate的时候,连的很正常!
可能有的文件没有加载进去,优其是你的配置文件,
可能加了Hibernate之后用到Hibernate的类写错了
......................
......................
......................光你给出的几句话得出来的可能性太多了......为什么不用开发工具~??????当你遇到了问题怎么办,就像这个,调试都没法调试,只能猜~!!!
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.datasource">java:comp/env/jdbc/hibernate</property>
<property name="show_sql">false</property>
<property name="dialect">net.sf.hibernate.dialect.OracleDialect</property>
<!-- Mapping files -->
<mapping resource="Course.hbm.xml"/>
</session-factory>
</hibernate-configuration>在server.xml中配的数据源:
<Context path="/hibernate" docBase="hibernate" 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>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.0.211:1521:CMS33</value>
</parameter>
<parameter>
<name>username</name>
<value>name</value>
</parameter>
<parameter>
<name>password</name>
<value>password</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>
望高手指教……这样连Oracle10g有错吗?
这是我9i的配置
server.xml
<Context path="" docBase="." debug="0" crosscontext="false" reloadable="true"> <Resource name="jdbc/OracleDB" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/OracleDB">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@127.0.0.1:1521:quanwei</value>
</parameter>
<parameter>
<name>username</name>
<value>scott</value>
</parameter>
<parameter>
<name>password</name>
<value>tiger</value>
</parameter> <parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
</ResourceParams>
</Context> hibernate
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration> <session-factory name="org.apache.commons.dbcp.BasicDataSourceFactory">
<property name="hibernate.show_sql">true</property>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="jndi.url">jdbc:oracle:thin:@127.0.0.1:1521:quanwei</property>
<property name="connection.datasource">java:comp/env/jdbc/OracleDB</property>
<mapping resource="login/po/FollowUser.hbm.xml" />
<mapping resource="client/po/FollowArea.hbm.xml" />
<mapping resource="client/po/FollowLevel.hbm.xml" />
<mapping resource="client/po/FollowClient.hbm.xml" /> </session-factory></hibernate-configuration>
检查一下你的驱动程序,版本是否匹配,是否放在了Tomcat 的 lib 里
又做了一些尝试!又发现了新的错误:
Cannot create JDBC driver of class '' for connect URL 'null'
java.sql.SQLException: No suitable driver
可是很奇怪,我的驱动ojdbc14.jar肯定没问题,不仅放在了自己的应用里,也放到了Tomcat的lib里!奇怪!!!
<property name="connection.driver_class">
oracle.jdbc.OracleDriver
</property>
<property name="connection.url">
jdbc:oracle:thin:@192.168.0.211:1521:CMS33
</property>
<property name="connection.username">name</property>
<property name="connection.password">password</property>
<property name="dialect">
org.hibernate.dialect.Oracle9Dialect
</property>
<property name="show_sql">true</property>
<property name="hibernate.use_outer_join">true</property>
<property name="hibernate.format_sql">true</property>
<property name="connection.useUnicode">true</property>把连接配在hibernate.hbm.xml里面再试试;
org.hibernate.dialect.Oracle9Dialect
</property>
改成你的:
<property name="dialect">net.sf.hibernate.dialect.OracleDialect</property>
sql语句执行都是在connect之后执行的,不然会告诉你无法连接
报错信息就是上面写的Hibernate: insert into Courses (Name, CourseId) values (?, ?),插入的是空值!
<property name="show_sql">true</property>这条,表示要show的sql就是那个
我现在的情况就是插入的是空值!别的报错信息没有!可为何会这样?用hibernate我都不会找错了……呵呵……希望有老师给指教一下???
奥!我一不小心打开数据库,居然发现成功了!待我把一些遗留问题搞清楚,就结贴!譬如我的数据源为何不成?