for(Shop s:list) {
System.out.println(s.getName());
String sql="select shopId,sum(ele_bank+ele_card+water_card+water_bank+coal_card+coal_bank) as zonghe ,sum(sale_bank+sale_card) as sale,sum(cigarette_card+cigarette_bank) as bacco, sum(yidong_card+yidong_bank+dianxin_card+dianxin_bank) as recharge from hs_shop_items where record_time like '%2013-12-12%' and shopId="+s.getId();
Session officeSession=officeSessionFactory.openSession();
officeSession.beginTransaction();
SQLQuery queryOffice=officeSession.createSQLQuery(sql);
List<ShopTransDTO> r=queryOffice.addEntity(ShopTransDTO.class).list();
res.add(r.get(0));
}
如上图中的
Session officeSession=officeSessionFactory.openSession();
officeSession.beginTransaction();
这个部分放在循环中是错误的
应该这么写:
Session officeSession=officeSessionFactory.openSession();
officeSession.beginTransaction();
for(Shop s:list) {
System.out.println(s.getName());
String sql="select shopId,sum(ele_bank+ele_card+water_card+water_bank+coal_card+coal_bank) as zonghe ,sum(sale_bank+sale_card) as sale,sum(cigarette_card+cigarette_bank) as bacco, sum(yidong_card+yidong_bank+dianxin_card+dianxin_bank) as recharge from hs_shop_items where record_time like '%2013-12-12%' and shopId="+s.getId();
SQLQuery queryOffice=officeSession.createSQLQuery(sql);
List<ShopTransDTO> r=queryOffice.addEntity(ShopTransDTO.class).list();
res.add(r.get(0));
}