load,get只能通过主键里取出,比如说我做一个登录页面,传入只有name,和password信息,但load,get必须通过主键,无办法在登录成功的页面显示用户其他信息,如果用find的话返回的是集合,可以得到其他信息,但觉得有点麻烦,有无更好的办法?

解决方案 »

  1.   

    使用hibernateTemplate的回调方法获取Session。hibernateTemplate.execute(new HibernateCallback() {

    @Override
    public Object doInHibernate(Session session) throws HibernateException,
    SQLException {
    return session.createQuery("update ProductType p set p.visible=? where p.typeid=?")
    .setParameter(0, false)
    .setParameter(1, entityids) 
    .executeUpdate();
    }
    });
      

  2.   

    好多办法,象楼上的自己写hql语句等等....
      

  3.   

    我现在用的是find的方法,把集合的第一个object转型传入实体类里面,1楼的方法大概明白,有无其他的呢?
      

  4.   

    看API,看DOC啊。要有自己的思维方法
      

  5.   

    回调方法是对的,还有Query查询,本地sql查询,criteria 、离线查询,命名查询,也可以基于xml配置文件和注解的形式,等等吧
      

  6.   

    session.createQuery
    session.createSQLQuery
      

  7.   

    赞同...!写代码不能靠别人告诉你怎么写~!看API是必须得
      

  8.   

    一般用到hibernate。。感觉都没有怎么用get。。及load方法。。根据自己的业务需要选择