我可以用下面的代码查询带有id的行:
Session session = (Session) HibernateUtil.getSessionFactory().getCurrentSession();
transaction = session.beginTransaction();
result = (T) session.get(clazz, id);但我想实现一些不同的东西。为什么这是不可能的(或者是可能的?)声明某一列,并获取与该列的值匹配的所有行。如下所示:
Session session = (Session) HibernateUtil.getSessionFactory().getCurrentSession();
transaction = session.beginTransaction();
result = (T) session.get(clazz, "column", "column_value");发布于 2013-02-03 19:09:32
它很容易用Criteria API或HQL实现。
假设Hibernate不支持通过not id列获取实体,因为使用Hibernate L1缓存实现了Unit Of Work和Identity Map模式。
还要考虑Session#get and Session#load方法之间的差异。
https://stackoverflow.com/questions/14671277
复制相似问题