⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 forumlist.java

📁 一个不错的bbs论坛系统.对初学者很有帮助
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.yhbbs.comm.tag;

import java.util.HashMap;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
import org.apache.log4j.Logger;
import com.yhbbs.article.biz.ArticleBiz;
import com.yhbbs.article.itface.ArticleDto;
import com.yhbbs.comm.Pages;
import com.yhbbs.forum.biz.ForumBiz;
import com.yhbbs.user.biz.UserBiz;
import com.yhbbs.user.itface.bean.UserSession;
import com.yhbbs.utils.Constants;
import com.yhbbs.utils.ReqUtils;
import com.yhbbs.utils.StringUtils;
import com.yhbbs.yhclass.biz.ClassBiz;

/**
 * <p>Title: 论坛文章列表</p>
 * <p>Company: www.yyhweb.com</p>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YHBBS-2.0
 */
public class ForumList extends TagSupport{
	
	private static final long serialVersionUID = 1L;

	private static Logger bbslog = Logger.getLogger(ForumList.class.getName());

	public int doStartTag() throws JspException	{
	    return 0;
	}

	public int doEndTag() throws JspException {
	    try{  
	    	 HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
	    	 StringBuffer sb = new StringBuffer();
	    	 UserSession curUser = (UserSession) request.getSession(true).getAttribute(Constants.bbsuser);
	    	 int classId = ReqUtils.getInt(request,"cId");
	    	 int forumId = ReqUtils.getInt(request,"fId");
	    	 int curPage = ReqUtils.getInt(request,"curPage");
	    	 String action = ReqUtils.getString(request, "action");
	   
	    	 List alltop = ArticleBiz.getAllTop();
	    	 List classtop = ArticleBiz.getClassTop(classId);
	    	 List forumtop = ArticleBiz.getForumTop(forumId);
	    	 List otherlist = null;
	    	 String forumAdmin = ForumBiz.getForumAdmin(forumId);
	    	 String forumadmin[] = null;
	    	 //不采用ibatis的分页  则xml中sql需要传入每一个分页的开始和结束位置 故采用hashmap存储参数
	    	 int arttotal = 0;
	    	 int pagesize = 20;
	    	 int start = 0;
	    	 String link = "";
	         if(curPage>1){      // 如果不是第一页,则从该页的第一条开始
	 			start = (curPage-1)*pagesize;
	 		 }
	         HashMap<String, Integer> forumpage = new HashMap<String, Integer>();
	         forumpage.put("forumid",forumId);
	         forumpage.put("start",start);
	         forumpage.put("end",pagesize);
	    	 if(action.equals("j")){
	    		 link = "Forum.htm?cId="+classId+"&fId=" + forumId + "&action=j";
	        	 arttotal = ArticleBiz.getForumEliteC(forumId);
	        	 otherlist = ArticleBiz.getForumElite(forumpage);
	         }else{
	        	 link = "Forum.htm?cId="+classId+"&fId=" + forumId;
	        	 arttotal = ArticleBiz.getFmNoTopArtC(forumId);
	        	 otherlist = ArticleBiz.getForumArt(forumpage);
	         }
	    	 Pages pages = new Pages(arttotal, curPage,pagesize,link);
	         
	         ArticleDto article = null; 
	         String titleImg = "";
	         String postTime = "";
	         String lastPTime = "";
	         String isLock = "";
	         String isVote = "";
	         int lastUserId = 0;
	         sb.append("<table align=center cellSpacing=0 cellPadding=0 width=100%>");
	    	 sb.append("<tr><td><a href=Post.htm?cId=");
	    	 sb.append(classId);
	    	 sb.append("&fId=");
	    	 sb.append(forumId);
	    	 sb.append("&action=post>");
	    	 sb.append("<img src=webapp/images/newpost.gif border=0 alt=发表新帖子></a>&nbsp;&nbsp;");
	    	 sb.append("<a href=Post.htm?cId=");
	    	 sb.append(classId);
	    	 sb.append("&fId=");
	    	 sb.append(forumId);
	    	 sb.append("&action=vote>");
	    	 sb.append("<img src=webapp/images/newvote.gif border=0 alt=发表新投票></a>");
	    	 sb.append("</td><td align=right><img src='webapp/images/jinhua.gif'>&nbsp;");
	    	 sb.append("<a href='Forum.htm?cId=");
	    	 sb.append(classId);
	    	 sb.append("&fId=");
	    	 sb.append(forumId);
	    	 sb.append("&action=j'>");
	    	 sb.append("<b>精华帖子</b>");
	    	 sb.append("</a>");
	    	 sb.append("</td>");
	    	 sb.append("<form name=jumpca>");
	    	 sb.append("<td align=right width='140px'>");
	    	 sb.append("<img src=webapp/images/forumadmin.gif border=0 alt=论坛版主>&nbsp;&nbsp;");
    	     sb.append("<select name=jumpca onchange=adminshow()>");
             sb.append("<option>论坛版主 :</option>");
             sb.append("<option>----------</option>");
             if(forumAdmin.length()>1){
	             forumadmin = StringUtils.split(forumAdmin, ",");
	             for(int j=0; j< forumadmin.length; j++) {
	            	 sb.append("<option value=User.htm?uId=");
	             	 sb.append(UserBiz.getUserId(forumadmin[j]));
	             	 sb.append(">");
	                 sb.append(forumadmin[j]);
	                 sb.append("</option>");
	             }
             }
             sb.append("</select>&nbsp;</td>");
	    	 sb.append("</form>");
	    	 sb.append("</tr>");
	    	 sb.append("</table>");
	    	 
	    	 sb.append("<table class=tab1 align=center cellSpacing=0 cellPadding=0 width=100%>");
 			 sb.append("<tr><td colspan=7>");
 			 sb.append("<table class=tab_c width=100% cellSpacing=0 cellPadding=0>");
	    	 sb.append("<tr height=20px align=center><td width=5%>");
	    	 sb.append("<b><font color=#FFFFFF>&nbsp;状态&nbsp;</b></font></td>");
	    	 sb.append("<td class=td_l width=4%><b><font color=#FFFFFF>-</b></font></td>");
	    	 sb.append("<td class=td_l width=48%><b><font color=#FFFFFF>主题");
	    	 sb.append("&nbsp;&nbsp;点击<img src='webapp/images/class0.gif'>展开回复贴</font></b></td>");
	    	 sb.append("<td class=td_l width=10%><b><font color=#FFFFFF>作者</b></font></td>");
	    	 sb.append("<td class=td_l width=5%><b><font color=#FFFFFF>回复</b></font></td>");
	    	 sb.append("<td class=td_l width=5%><b><font color=#FFFFFF>点击</b></font></td>");
	    	 sb.append("<td class=td_l width=280px><b><font color=#FFFFFF>最后回复</b></font></td>");
	    	 sb.append("</tr></table>");
	    	 sb.append("</td></tr>");//top
	    	 
	    	 sb = sb.append(listart(alltop,curUser,classId));
	    	 sb = sb.append(listart(classtop,curUser,classId));
	    	 sb = sb.append(listart(forumtop,curUser,classId));

	    	 if(alltop.size()>0 || classtop.size()>0 || forumtop.size()>0){
	    		 sb.append("<tr><td class=td_t colspan=7>");
	    		 if(action.equals("j"))
	 				 sb.append("&nbsp;&nbsp;&nbsp;&nbsp;<b>以下是本论坛精华帖子</b>");
		    	 sb.append("&nbsp;</td></tr>");
	    	 }
	    	 if(otherlist.size()>0){ 	
	    		 for(int i=0;i<otherlist.size();i++){
		    	 article = (ArticleDto) otherlist.get(i);
		    	 postTime = article.getPosttime();
		    	 titleImg = article.getTitleimg();
		    	 lastUserId = article.getLastuserid();
		    	 lastPTime = article.getLastptime();
		    	 isLock = article.getIslock();
		    	 isVote = article.getIsvote();
	 			 sb.append("<tr height=30px align=center onMouseOver=this.className='tr_o' onMouseOut=this.className=''>");
	 			 sb.append("<td class=td_tbg width=5%>");
	 			 if(isLock.equals("1"))
	 				 sb.append("<img src=webapp/images/lock.gif border=0 alt=该贴已被锁定>");
	 			 else if(!isVote.equals("0"))
	 				 	sb.append("<img src=webapp/images/vote.gif border=0 alt=投票贴>");
	 			 	  else
	 			 		sb.append("<img src=webapp/images/newtopic.gif border=0>");
	 			 
	 			 sb.append("</td>");
	 			 sb.append("<td class=td_lt width=4%>");
	 			 if(titleImg.length()>4)
	 				 sb.append("<img src='webapp/images/emot/"+titleImg+"' border=0 />");
	 			 else
	 				 sb.append("&nbsp;");
	 			 sb.append("</td>");
	 			 sb.append("<td class=td_lt width=48% align=left>&nbsp;");
	 			 if(article.getReplaynum()>0){
		    		 sb.append("<img src='webapp/images/class0.gif' loaded='no' title='展开回复贴' style='cursor:hand;' id='followImg"+article.getId()+"'");
		    		 sb.append(" onclick='ArtReplays("+article.getClassid()+","+article.getForum()+","+article.getId()+",0)'>");
		    	 }else{
		    		 sb.append("<img src='webapp/images/class1.gif'>");
		    	 }
	 			 sb.append("&nbsp;<a href=Article.htm?cId=");
	 			 sb.append(article.getClassid());
	 			 sb.append("&fId=");
	 			 sb.append(article.getForum());
	 			 sb.append("&aId=");
	 			 sb.append(article.getId());
	 			 sb.append(" title='标题:");
	 			 sb.append(article.getTitle());
	 			 sb.append("\n");
	 			 sb.append("作者:");
	 			 sb.append(article.getUser());
	 			 sb.append("\n");
	 			 sb.append("日期:");
	 		     sb.append(postTime);
	 		     sb.append("\n"); 
	 			 if(lastUserId>0){
	 				 sb.append("最后回复:");
	 				 sb.append("\n");
	 				 sb.append("作者:");
		 			 sb.append(article.getLastuser());
		 			 sb.append("\n");
		 			 sb.append("日期:");
		 			 sb.append(lastPTime);
		 			 
	 			 }else{
	 				 sb.append("没有回复");
	 				 sb.append("\n");
		 			 sb.append("--------------------"); 
	 			 }
	 			 sb.append("' >");
	 			 sb.append(article.getTitle());
	 			 sb.append("</a>");
	 			 if(article.getIselite().equals("1")){
	 				sb.append("&nbsp;<img src=webapp/images/elite.gif border=0 alt=精华贴>"); 
	 			 }
	 			 if(article.getIscom().equals("1")){
	 				sb.append("&nbsp;<img src=webapp/images/comm.gif border=0 alt=推荐贴>"); 
	 			 }
	 			 sb.append(manage(curUser,article,classId));
	 			 sb.append("</td>");
	 			 sb.append("<td class=td_ltbg  width=10%>");
	 			 sb.append("<a href='User.htm?uId=");
				 sb.append(article.getUserid());
				 sb.append("'>");
	 			 sb.append(article.getUser());
	 			 sb.append("</a>");
	 			 sb.append("</td>");
	 			 sb.append("<td class=td_lt width=5%>");
	 			 sb.append(article.getReplaynum());
	 			 sb.append("</td>");
	 			 sb.append("<td class=td_lt width=5%>");
	 			 sb.append(article.getReadtimes());
	 			 sb.append("</td>");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -