RoleDAO.java
上传用户:lm2018
上传日期:2015-12-12
资源大小:30449k
文件大小:5k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. package com.oa.module.office.role;
  2. import java.util.List;
  3. import org.hibernate.Query;
  4. import org.hibernate.Session;
  5. import org.hibernate.SessionFactory;
  6. import org.springframework.jdbc.core.JdbcTemplate;
  7. import org.springframework.orm.hibernate3.HibernateTemplate;
  8. import com.oa.util.XPage;
  9. public class RoleDAO implements InRoleDAO{
  10. private SessionFactory sfactory;
  11. private SessionFactory sessionFactory;
  12. private JdbcTemplate jdbcTemplate;//JDBC
  13. private HibernateTemplate ht = null;
  14. public XPage getRolelist(int currentPage, int count, Trole info) {
  15. String hql="select a from Trole a where 1=1";
  16. String path="role.do?method=query&";
  17. XPage page = new XPage();
  18. //开始设置xpage
  19. page.setCurrentPage(currentPage);
  20. page.setCount(count);
  21. //动态的构建hql语句和xpage的path
  22. if(info!=null){
  23. if(info.getRname()!=null&&!info.getRname().trim().equals("")){
  24. hql+=" and a.rname like :rname";
  25. path+="rname="+info.getRname()+"&";
  26. }
  27. }
  28. //设置分页路径
  29. page.setPath(path);
  30. Session session = null;
  31. Query query =null;
  32. List list = null;
  33. try {
  34. session = sfactory.openSession();
  35. query = session.createQuery(hql);
  36. // 设置查询参数
  37. if(info!=null){
  38. if(info.getRname()!=null&&!info.getRname().trim().equals("")){
  39. query.setParameter("rname","%"+info.getRname()+"%");
  40. }
  41. }
  42. int allcount = query.list().size();
  43. page.setAllCount(allcount);
  44. query.setFirstResult((currentPage-1)*count);
  45. query.setMaxResults(count);
  46. list = query.list();
  47. page.setList(list);
  48. session.flush();
  49. } catch (Exception e) {
  50. e.printStackTrace();
  51. }finally{
  52. sfactory.close();
  53. }
  54. return page;
  55. }
  56. public List getFfunction() {
  57. String hql = "select a from Tfunction a where 1=1 ";
  58. List list = null;
  59. Session session = null;
  60. Query query = null;
  61. try {
  62. session = sfactory.openSession();
  63. query = session.createQuery(hql);
  64. list = query.list();
  65. session.flush();
  66. } catch (Exception e) {
  67. e.printStackTrace();
  68. }finally{
  69. session.close();
  70. }
  71. return list;
  72. }
  73. public List getSfunction() {
  74. String hql = "select a from Tfunction a where fpid!=0 ";
  75. List list = null;
  76. Session session = null;
  77. Query query = null;
  78. try {
  79. session = sfactory.openSession();
  80. query = session.createQuery(hql);
  81. list = query.list();
  82. session.flush();
  83. } catch (Exception e) {
  84. e.printStackTrace();
  85. }finally{
  86. session.close();
  87. }
  88. return list;
  89. }
  90. public boolean addList(Trole info) {
  91. HibernateTemplate ht = new HibernateTemplate(this.sfactory);
  92. try {
  93. ht.save(info);
  94. } catch (Exception e) {
  95. return false;
  96. }
  97. return true;
  98. }
  99. public List getRfList(long rid) {
  100. String sql = "select * from trole r left join trolefunction " +
  101. "rf on r.rid=rf.rid left join tfunction f on rf.fid=f.fid where r.rid=" + rid;
  102. List list = null;
  103. list = jdbcTemplate.queryForList(sql);
  104. return list;
  105. }
  106. public Trole getRfinfo(long rid) {
  107. HibernateTemplate ht = new HibernateTemplate(this.sfactory);
  108. Trole role = null;
  109. try {
  110. role = (Trole)ht.get(Trole.class,new Long(rid));
  111. } catch (Exception e) {
  112. e.printStackTrace();
  113. }
  114. return role;
  115. }
  116. public boolean editList(Trole info) {
  117. HibernateTemplate ht = new HibernateTemplate(this.sfactory);
  118. try {
  119. ht.update(info);
  120. return true;
  121. } catch (Exception e) {
  122. return false;
  123. }
  124. }
  125. public SessionFactory getSfactory() {
  126. return sfactory;
  127. }
  128. public void setSfactory(SessionFactory sfactory) {
  129. this.sfactory = sfactory;
  130. }
  131. public JdbcTemplate getJdbcTemplate() {
  132. return jdbcTemplate;
  133. }
  134. public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
  135. this.jdbcTemplate = jdbcTemplate;
  136. }
  137. public List getrole(){
  138. ht = new HibernateTemplate(this.sfactory);
  139. String hql="select r from Trole r ";
  140. return ht.find(hql);
  141. }
  142. public SessionFactory getSessionFactory() {
  143. return sessionFactory;
  144. }
  145. public void setSessionFactory(SessionFactory sessionFactory) {
  146. this.sessionFactory = sessionFactory;
  147. }
  148. public boolean getRoleByName(String rname) {
  149. List list = null;
  150. String sql = "select * from trole where rname='"+rname+"'";
  151. list = jdbcTemplate.queryForList(sql);
  152. if(list.size()<=0){
  153. return false;
  154. }else{
  155. return true;
  156. }
  157. }
  158. public boolean delList(Trole info) {
  159. HibernateTemplate ht = new HibernateTemplate(this.sfactory);
  160. try {
  161. ht.delete(info);
  162. return true;
  163. } catch (Exception e) {
  164. return false;
  165. }
  166. }
  167. public boolean getUserForRid(long rid) {
  168. List list = null;
  169. String sql = "select * from tuser u left join tuserrole ur on u.uno = ur.uno where u.uislocked = '0' and ur.rid='"+rid+"'";
  170. list = jdbcTemplate.queryForList(sql);
  171. if(list.size()<=0){
  172. return false;
  173. }else{
  174. return true;
  175. }
  176. }
  177. }