用框架自动生成的代码,findById就能提交事务,findByProperty不提交事务
action代码
// 查找管理员
public String searchAdmin() {
HttpServletRequest request = ServletActionContext.getRequest();
String aname = request.getParameter("aname");
List<Admin> list=iAdminBiz.findByAname(aname);
request.setAttribute("admin", list);
return "searchAdmin";
}
接口
public List<Admin> findByAname(Object aname);
@Override
public List<Admin> findByAname(Object aname) {
return adminDAO.findByAname(aname);
}
Hibernate生成代码
public List findByProperty(String propertyName, Object value) {
log.debug("finding Admin instance with property: " + propertyName
+ ", value: " + value);
try {
String queryString = "from Admin as model where model."
+ propertyName + "= ?";
Query queryObject = getSession().createQuery(queryString);
queryObject.setParameter(0, value);
return queryObject.list();
} catch (RuntimeException re) {
log.error("find by property name failed", re);
throw re;
}
}
public List findByAname(Object aname) {
return findByProperty(ANAME, aname);
}