论坛首页 Java版 Hibernate

还是spring+hibernate的问题

浏览 2305 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2005-08-15
[code:1]import org.hibernate.SessionFactory;
import org.hibernate.tool.hbm2ddl.SchemaExport;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import org.hibernate.cfg.Configuration;
import cn.boyoi.domain.User;
public class UserDaoImpl extends HibernateDaoSupport implements UserDao{
public UserDaoImpl()
{
super();
}
public User getUserById(long id)
{
        User user = (User)getHibernateTemplate().find("from user_detial u where u.user_id=?",new Long(id));
//User user = (User)getHibernateTemplate().load(User.class,new Long(id));
return user;
}
public void addUser(User user)
{
getHibernateTemplate().save(user);
}
}[/code:1]
在spring环境下调用addUser()方法,能够正常存入对象,但紧接着用getUserById()时,提示错误 user_detial is not mapped
如果把getUserById()改为User user = (User)getHibernateTemplate().load(User.class,new Long(id)); 则提示错误 org.hibernate.LazyInitializationException: could not initialize proxy - the owning Session was closed
有人知道为什么吗,User的代码在http://www.javaeye.com/viewtopic.php?t=15297里
   
最后更新时间:2005-08-16
Hibernate3.0 采用新的基于ANTLR的HQL/SQL查询翻译器。

你应该是缺少antlr-2.7.5H3.jar文件。
   
0 请登录后投票
最后更新时间:2005-08-16
在我的类路径里面有这个antlr-2.7.5H3.jar类的....还是不行
   
0 请登录后投票
最后更新时间:2005-08-16
哈哈,终于解决了,在from user_detial u where u.user_id=?里,user_detial是一个映射后的表名,实际应该是用持久化类名User......
顺便提出各新问题,getHibernateTemplate().load(User.class,new Long(id))出现LazyInitializationException: could not initialize proxy - the owning Session was closed 的错误,请问有人知道HibernateTemplate是怎么管理session的吗?
   
0 请登录后投票
论坛首页 Java版 Hibernate

跳转论坛:
JavaEye推荐