ChannelService.java
上传用户:junmaots
上传日期:2022-07-09
资源大小:2450k
文件大小:5k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. /*
  2.  * Created on 2005-11-10
  3.  *
  4.  * TODO To change the template for this generated file go to
  5.  * Window - Preferences - Java - Code Style - Code Templates
  6.  */
  7. package com.mycompany.news.service;
  8. import java.sql.Connection;
  9. import java.util.ArrayList;
  10. import java.util.List;
  11. import com.mycompany.database.Database;
  12. import com.mycompany.news.dao.ChannelDAO;
  13. import com.mycompany.news.dao.impl.ChannelDAOImpl;
  14. import com.mycompany.news.dto.Channel;
  15. import com.mycompany.news.dto.Column;
  16. /**
  17.  * @author Administrator
  18.  * 
  19.  * TODO To change the template for this generated type comment go to Window -
  20.  * Preferences - Java - Code Style - Code Templates
  21.  */
  22. public class ChannelService extends BaseService{
  23. private ChannelDAO channelDAO=new ChannelDAOImpl();
  24. public List getChildrenColumns(Channel channel){
  25. Connection connection = null;
  26. try {
  27. connection = Database.getConnection();
  28. channelDAO.setConnection(connection);
  29. return channelDAO.getChildren(channel.getChannelID());
  30. } catch (Exception e) {
  31. e.printStackTrace();
  32. message = e.getMessage();
  33. } finally {
  34. Database.releaseConnection(connection);
  35. }
  36. return new ArrayList();
  37. }
  38. public boolean addChannel(Channel channel) {
  39. Connection connection = null;
  40. try {
  41. connection = Database.getConnection();
  42. channelDAO.setConnection(connection);
  43. channelDAO.addChannel(channel);
  44. Database.commit();
  45. return true;
  46. } catch (Exception e) {
  47. e.printStackTrace();
  48. message = e.getMessage();
  49. Database.rollback();
  50. return false;
  51. } finally {
  52. Database.releaseConnection(connection);
  53. }
  54. };//添加Channel信息
  55. //
  56. public boolean updateChannel(Channel channel) {
  57. Connection conn=null;
  58. try{
  59. conn = Database.getConnection();
  60. channelDAO.setConnection(conn);
  61. channelDAO.updateChannel(channel);
  62. conn.commit();
  63. return true;
  64. }catch(Exception e){
  65. e.printStackTrace();
  66. message = e.getMessage();
  67. Database.rollback();
  68. return false;
  69. }finally{
  70. Database.releaseConnection(conn);
  71. }
  72. };//修改Channel信息
  73. //
  74. public boolean deleteChannel(Channel channel) {
  75. Connection conn=null;
  76. try{
  77. conn = Database.getConnection();
  78. channelDAO.setConnection(conn);
  79. List columns = channelDAO.getChildren(channel.getChannelID());
  80. if(columns.size()!=0){
  81. message="已经存在下属栏目,不允许删除";
  82. return false;
  83. }
  84. channelDAO.deleteChannel(channel);
  85. conn.commit();
  86. return true;
  87. }catch(Exception e){
  88. e.printStackTrace();
  89. message = e.getMessage();
  90. Database.rollback();
  91. return false;
  92. }finally{
  93. Database.releaseConnection(conn);
  94. }
  95. }
  96. //
  97. public List listAllChannels() {
  98. Connection conn=null;
  99. try {
  100. conn = Database.getConnection();
  101. channelDAO.setConnection(conn);
  102. return channelDAO.listAllChannels();
  103. } catch (Exception e) {
  104. e.printStackTrace();
  105. }finally{
  106. Database.releaseConnection(conn);
  107. }
  108. return null;
  109. }
  110. //
  111. public List listChannels(Channel channelCondition) {
  112. Connection conn =null;
  113. try{
  114. conn = Database.getConnection();
  115. channelDAO.setConnection(conn);
  116. return channelDAO.listChannels(channelCondition);
  117. }catch(Exception e){
  118. e.printStackTrace();
  119. message = e.getMessage();
  120. return null;
  121. }finally{
  122. Database.releaseConnection(conn);
  123. }
  124. };//组合条件查询
  125. //
  126. public Channel getByID(int id) {
  127. Connection connection = null;
  128. try {
  129. connection = Database.getConnection();
  130. channelDAO.setConnection(connection);
  131. return channelDAO.getByID(id);
  132. } catch (Exception e) {
  133. e.printStackTrace();
  134. setMessage(e.getMessage());
  135. } finally {
  136. Database.releaseConnection(connection);
  137. }
  138. return null;
  139. };//根据主键获取对象
  140. public StringBuffer getTreeString(String url,Long channelid){
  141. StringBuffer ret = new StringBuffer();
  142. ColumnService cs = new ColumnService();
  143. Channel channel = new Channel();
  144. channel.setChannelID(channelid);
  145. List topColumns = getChildrenColumns(channel);
  146. for(int i=0;i<topColumns.size();i++){
  147. Column c = (Column )topColumns.get(i);
  148. System.out.println("TOP--"+c.getColumnId());
  149. List allSubColumns = cs.listSublings(c);
  150. System.out.println("ALLSUB--"+allSubColumns);
  151. StringBuffer treeString = cs.getTreeString(url,c,allSubColumns);
  152. ret.append(treeString);
  153. if(i!=topColumns.size()){
  154. ret.append(",");
  155. }
  156. }
  157. return ret;
  158. }
  159. /**
  160.  * @return Returns the channelDAO.
  161.  */
  162. public ChannelDAO getChannelDAO() {
  163. return channelDAO;
  164. }
  165. /**
  166.  * @param channelDAO
  167.  *            The channelDAO to set.
  168.  */
  169. public void setChannelDAO(ChannelDAO channelDAO) {
  170. this.channelDAO = channelDAO;
  171. }
  172. }