在数据库里查出来正确的三行数据,
而在dao层里,查出来的却是 三行重复的第一条数据。
我把hql改成原生sql后还是一样的。
dao层的方法:
public List showview(int vsid) {
List view = HibernateSessionFactory.getSession()
.createSQLQuery("select * from VITEMVIEW where VS_ID=?")
.addEntity(Vitemview.class).setInteger(0, vsid).list();
return view;
}
生成的sql:
Hibernate:
select
dao 中查询的数据 相当于一个事物,而你在oracle里查询出来的是另一个事物,两个事物, 有可能是不一样的, 这也是你自身代码的问题。