hibernate4的dao层写法
- 作者: 帐号一管理
- 来源: 51数据库
- 2021-01-07
这种东西很常见,只是关于参数的问题的 可以这么实现,
比如你的参数是有1,2,3 那service层就写这3个参数的方法。
然后再dao层进行参数的判断,比如你只要查1,3限制条件的,
那service层上面层的action层里往service层传参数时候2应该是等于null,因为没有选2不是吗
那就在dao层对每个1,2,3参数进行判断
比如 1,3
可以写成
from XXX表
where
if(XXX1!=NULL){写1的限制}else{}
if(XX2!=null){写2的限制}else{}
if(xxx3!=null){写3的限制}else{}
只是在正常的共用语句之前进行了判断
希望对你有所帮助
可以写关联的hql的 string hql="select q from question q join user u where u.name=:uname"; query q=session.createquery(hql).setstring("uname", username) .setfirstresult(page *count) .setmaxresults(count); list<question> list = (list<question>) q.list();
比如你的参数是有1,2,3 那service层就写这3个参数的方法。
然后再dao层进行参数的判断,比如你只要查1,3限制条件的,
那service层上面层的action层里往service层传参数时候2应该是等于null,因为没有选2不是吗
那就在dao层对每个1,2,3参数进行判断
比如 1,3
可以写成
from XXX表
where
if(XXX1!=NULL){写1的限制}else{}
if(XX2!=null){写2的限制}else{}
if(xxx3!=null){写3的限制}else{}
只是在正常的共用语句之前进行了判断
希望对你有所帮助
可以写关联的hql的 string hql="select q from question q join user u where u.name=:uname"; query q=session.createquery(hql).setstring("uname", username) .setfirstresult(page *count) .setmaxresults(count); list<question> list = (list<question>) q.list();
推荐阅读
