是否还有其他方法可以减少以下代码段。在使用Hibernate4电流之前,我们先更改为Hibernate5(版本5.3.6.Final),以便在Hibernate5中进行太多更改。我们是此版本的新手,因此任何人都可以与我们共享用于在Hibernate5中调用任何存储过程的任何代码段。我们已经做到了,但是我们需要一些标准的优化代码。
在这里,我们使用以下方法。
@Override
public List<LocationCount> getLocationCounts(String userName) {
StoredProcedureQuery q = getCurrentSession().createStoredProcedureQuery("locationcount");
q.registerStoredProcedureParameter("userName", String.class, ParameterMode.IN);
q.setParameter("userName", userName);
q.execute();
List<LocationCount> data = new ArrayList<>();
List<Object[]> results = q.getResultList();
results.stream().forEach((record) -> {
LocationCount d = new LocationCount();
d.setOrgCode((String) record[0]);
d.setOrgName((String) record[1]);
d.setLocationCode((String) record[2]);
d.setLocationName((String) record[3]);
data.add(d);
});
return data;
}
谢谢
Sitansu