📄 rootcategory.java
字号:
/**
* @(#)tarena.action.RootCategory.java 2008-11-3
* Copy Right Information : Tarena
* Project : xindou
* JDK version used : jdk1.6.4
* Comments : 1级分类浏览类。
* 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.CategoryDAO;
import tarena.dao.TopicDAO;
import tarena.dao.pages.RootCategoryDAO;
import tarena.data.AbractCategory;
import tarena.data.AbractProduct;
import tarena.data.AbractTopic;
import tarena.data.CategorySecondAndThird;
import tarena.data.HotCategoryAndProduct;
import tarena.data.Personage;
import tarena.global.MessageOperate;
import tarena.global.Transform;
/**
* 1级分类浏览类。
* 2008-11-3
* @author 达内科技[Tarena Training Group]
* @version 1.0
* @since JDK1.6(建议)
*/
public class RootCategory extends Action {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
//此处记得保存rootid
/**
* 1.该id的存在性,session中保存(categoryid)该分类的id,所在地址 address
* 2.CatetgoryDAO中的ListCategory方法,列出该分类下的分类
* 3.ProductDAO中ListTopSaleProduct方法,列出该顶级分类下的销售商品
* 4.ProductDAO中ListTopCategory方法,列出该顶级分类下的销售排行3级分类
* 5.根据4,ListTopSaleProduct方法,列出3级分类下的销售商品,此处保存名称为Propducts_分类id
* 6.UserDAO中的ListTopTodayUser,列出本日发帖排行用户
* 7.UserDAO中的ListTopYesterdayUser,列出昨日发帖排行用户
* 8.UserDAO中的ListTopThisWeekUser,列出本周发帖排行用户
* 9.UserDAO中的ListTopThisMonthUser,列出本月发帖排行用户
* 10.TopicDAO的ListTopDayTopic方法,热帖日排行
* 11.TopicDAO的ListTopWeekTopic方法,热帖周排行
* 12.TopicDAO的ListTopYesterdayTopic方法,热帖昨日排行
* 13.TopicDAO的ListTopMonthTopic方法,热帖月排行
* 14.session中保存
* 15.请求Header.do
* 16.请求rootcategory.jsp
* 17.请求Foot.do
* @roseuid 49055CD60280
*/
String xid = request.getParameter("id");
Integer id = Transform.StringToInteger(xid);
CategoryDAO categoryDAO = new CategoryDAO();
if(id==-1 || !categoryDAO.isExit(id, 1)){
MessageOperate.setAttribute(request, "非法操作", "操作错误", "您所访问的id:"+id+",为空或不存在!程序将跳转到上一页.", "");
return mapping.findForward("message");
}else{
tarena.entity.Category category = categoryDAO.findById(id);
RootCategoryDAO rootCategoryDAO = new RootCategoryDAO();
List<AbractCategory> secondCategory = rootCategoryDAO.listSecondCategoryByTop(id);
List<CategorySecondAndThird> ocategorys = new Vector<CategorySecondAndThird>();
//2级分类和3级分类
if(secondCategory!=null)
for(AbractCategory c:secondCategory)
ocategorys.add(new CategorySecondAndThird(c,rootCategoryDAO.listHotThirdCategoryBySecond(c.getId())));
//顶级分类下的热点商品
List<AbractProduct> saleproducts = rootCategoryDAO.listHotProductByTop(id, 4);
//查询热门顶级分类下的热门3级分类
List<AbractCategory> hotThirdCategory = rootCategoryDAO.listHotThirdCategoryByTop(id, 10);
//3级分类和热门商品
List<HotCategoryAndProduct> hotproducts = new Vector<HotCategoryAndProduct>();
//热门主题
List<AbractTopic> topics_today = new TopicDAO().listHotTopic(10);
//名人榜
List<Personage> persons = rootCategoryDAO.listPersonage();
if(hotThirdCategory!=null)
for(AbractCategory c:hotThirdCategory)
hotproducts.add(new HotCategoryAndProduct(c,rootCategoryDAO.listProductByCategory(c.getId(), 5)));
request.setAttribute("tite", category.getCname()+" "+category.getDescription());
request.setAttribute("address", "<a href='default.htm'>首页</a> > <span id='aTabCategory'>"+category.getCname()+"</span>");
request.setAttribute("ocategorys", ocategorys);
request.setAttribute("saleproducts", saleproducts);
request.setAttribute("hotproducts", hotproducts);
request.setAttribute("persons", persons);
request.setAttribute("topics_today", topics_today);
request.setAttribute("topics_yesterday", topics_today);
request.setAttribute("topics_week", topics_today);
request.setAttribute("topics_month", topics_today);
request.setAttribute("rootid", id);
}
return mapping.findForward("rootcategory");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -