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

📄 cforum.java

📁 基于struts+hibernate的电子商务网站。可运行。数据库mysql
💻 JAVA
字号:
/**
  * @(#)tarena.action.CForum.java  2008-11-3  
  * Copy Right Information	: Tarena
  * Project					: xindou
  * JDK version used		: jdk1.6.4
  * Comments				: 此处输入简单类说明
  * Version					: 1.0
  * Sr	Date		Modified By		Why & What is modified
  * 1.	2008-11-3 	小猪     		新建
  **/
package tarena.action;

import java.util.List;

import java.util.Vector;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import tarena.dao.SectionDAO;
import tarena.dao.UserDAO;
import tarena.dao.pages.CForumDAO;
import tarena.data.AbractSection;
import tarena.data.AbractTopic;
import tarena.data.AdvancedPagination;

import tarena.data.SectionSecondAndThird;
import tarena.entity.Section;

import tarena.entity.User;
import tarena.global.CookieOperate;
import tarena.global.MessageOperate;
import tarena.global.PublicParameter;
import tarena.global.Transform;

 /**
 * 3级分类版块。
 * 2008-11-3
 * @author		达内科技[Tarena Training Group]
 * @version	1.0
 * @since		JDK1.6(建议) 
 */
public class CForum extends Action {

	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		SectionDAO sdao = new SectionDAO();
		CForumDAO cfdao = new CForumDAO();
//		UserDAO udao = new UserDAO();

		Integer sid = Transform.StringToInteger(request.getParameter("sid"));		

		User user = null;
		try {
			user = new UserDAO().findUserByUsername(CookieOperate.FindCookie(PublicParameter.cookie_user, request.getCookies()).getValue());
		} catch (RuntimeException e) {}
		
		//分页信息
		int total = cfdao.countTopic(sid);
		int every = user==null?10:(user.getTopicnum()==null?10:user.getTopicnum());
		int current = Transform.StringToInteger(request.getParameter("page"));
		String url = request.getRequestURI()+"?"+request.getQueryString();
		AdvancedPagination ap = new AdvancedPagination(total,every,current,10,url);		

		Section section = sdao.findById(sid);
		List<AbractTopic> atopic = cfdao.listTopic((ap.getCurrent()-1)*ap.getEvery(), ap.getEvery(), sid,AbractTopic.LETTOP_FALSE);
		List<AbractTopic> ontop = cfdao.listTopic(0, 10, sid,AbractTopic.LETTOP_TRUE);
		if(section==null){
			MessageOperate.setAttribute(request, "非法操作", "操作错误", "您所访问的id为空或不存在!程序将跳转到上一页.", "");
			return mapping.findForward("message");
		}
		System.out.println(total+","+every+","+current);

		
		request.setAttribute("pagination", ap);
		request.setAttribute("section", section);
		request.setAttribute("topics", atopic);
		request.setAttribute("top", ontop);
		request.setAttribute("topicnum", cfdao.countTopic(sid));
		request.setAttribute("postnum", cfdao.countPostBySectionId(sid));	
		request.setAttribute("ocategorys", getOcategorys(sid));
		request.setAttribute("address", "<a href='default.htm'>首页</a>&nbsp;> &nbsp;<span id='aTabCategory'>"+section.getSectionname()+"</span>");
		return mapping.findForward("cforum");
	}
	
//	private Pagination initPagination(HttpServletRequest request,Section section,String url){
//		int amount = 10;		//默认每页显示10个
//		Integer page = Transform.StringToInteger(request.getParameter("page"));
//		if(page.equals(-1)) page = 1;			//如果没有发现分页的参数,默认显示第一页。
//		Set<Topic> topics = section.getTopics(); 
//		int total = topics.size()%amount==0?topics.size()/amount:(topics.size()/amount+1);	//总页数
//		Pagination pagination = new Pagination();
//		pagination.setTotal(total);
//		pagination.setCurrent(page);
//		pagination.setMaxPages(3);	//设置同时最多显示的页数。
//		/*pagination.setFirst(new Page("首页",page.equals(1)?null:requestpage+1));
//		pagination.setLast(new Page("末页",page.equals(total)?null:requestpage+endpage));*/
//		return null;
//	}
	
	private List<SectionSecondAndThird> getOcategorys(Integer sid){		
		SectionDAO sdao = new SectionDAO();
		List<AbractSection> secondSectioin = sdao.listSecondCategory(new Integer(sid));
		List<SectionSecondAndThird> ocategorys = new Vector<SectionSecondAndThird>();
		//2级分类和3级分类
		if(secondSectioin!=null){
			for(AbractSection c:secondSectioin){				
				ocategorys.add(new SectionSecondAndThird(c,sdao.listHotThirdCategory(c.getId())));
			}			
		}
		return ocategorys;
	}
}

⌨️ 快捷键说明

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