📄 cforum.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> > <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 + -