浏览 4679 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2003-11-17
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2003-11-17
njbxc 写道 :
不用手工插入, sequence字段的Java Bean Property不用设置就可以了,当然配置文件需要申明sequence. 但是我不明白,能在解释下吗? |
|
返回顶楼 | |
发表时间:2003-11-17
<id name="id" type="long" column="uid"> <generator class="sequence"> <param name="sequence">uid_sequence</param> </generator> </id> |
|
返回顶楼 | |
发表时间:2003-11-17
yehs220 写道 <id name="id" type="long" column="uid"> <generator class="sequence"> <param name="sequence">uid_sequence</param> </generator> </id> 谢谢,已经解决 还有一个问题,我的查询在执行多次后,数据库连接被占住了,是不是要手动关连接 严重: Could not execute query java.sql.SQLException: Io 异常: Socket closed at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179) at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333) at oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:389) at oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:413) at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedState ment.java:119) at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedState ment.java:92) at oracle.jdbc.driver.OracleConnection.privatePrepareStatement(OracleCon nection.java:950) at oracle.jdbc.driver.OracleConnection.prepareStatement(OracleConnection .java:802) at org.apache.commons.dbcp.DelegatingConnection.prepareStatement(Delegat 程序如下 Iterator it=null; beginTransaction(); String queryString = "select Hibernatetests from Hibernatetest as Hibernatetests where Hibernatetests.names=:name"; Query query=session.createQuery(queryString); query.setString("name",name); it=query.iterate(); |
|
返回顶楼 | |
发表时间:2003-11-17
这和你的数据库配置有关系,和Hibernate没有关系,也许你连接开得太少,又或者其他什么原因。
|
|
返回顶楼 | |
发表时间:2003-11-17
robbin 写道 这和你的数据库配置有关系,和Hibernate没有关系,也许你连接开得太少,又或者其他什么原因。
不对啊,我的连接加大到了100了,以前的程序还是能够跑的很好啊 就是新写的hibernate程序有上面的问题 |
|
返回顶楼 | |
发表时间:2003-11-17
你是如何管理Session的?可能是用完之后没有释放。
|
|
返回顶楼 | |
发表时间:2003-11-18
yehs220 写道 你是如何管理Session的?可能是用完之后没有释放。
应该是在什么时候释放呢? public Iterator getAllData() throws HibernateException { Iterator it=null; beginTransaction(); String queryString = "select Hibernatetests from Hibernatetest as Hibernatetests"; Query query=session.createQuery(queryString); it=query.iterate(); session.close(); return it; } 这样会报错的 |
|
返回顶楼 | |
发表时间:2003-11-18
xwest 写道 yehs220 写道 你是如何管理Session的?可能是用完之后没有释放。
应该是在什么时候释放呢? public Iterator getAllData() throws HibernateException { Iterator it=null; beginTransaction(); String queryString = "select Hibernatetests from Hibernatetest as Hibernatetests"; Query query=session.createQuery(queryString); it=query.iterate(); session.close(); return it; } 这样会报错的 你两行红色的代码很有问题,取消方法beginTransaction(),在这个方法中显式打开session-开启事务-提交/回滚事务-关闭session |
|
返回顶楼 | |