[color=red]Action:[/color]
[color=red]Service:[/color]
[color=red]Dao:[/color]
List allNodesList = sysDepartmentService.findbySql(sql,"ht.sys.model.SysDepartment");
[color=red]Service:[/color]
public List findbySql(String sql,String classname){
return theDAO.findbySql(sql,classname);
}
[color=red]Dao:[/color]
/**
* 执行sql查询
* @param sql
* @return
*/
public List findbySql(String sql,String classname){
log.debug("finding by sql");
try {
Session session = this.getSession();
List deps =new ArrayList();
if(null!=classname&&!classname.replaceAll(" ", "").equals("")){
//返回类对象
try {
deps= session.createSQLQuery(sql)
.addEntity(Class.forName(classname))
.list();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
log.error(classname+":不是一个合法的类名");
e.printStackTrace();
}
}else{
//返回对象数组
deps= session.createSQLQuery(sql).list();
}
this.releaseSession(session);//关闭session
return deps;
} catch (RuntimeException re) {
log.error("finding by sql failed:"+sql, re);
throw re;
}
}