【Java开源代码栏目提醒】:网学会员鉴于大家对Java开源代码十分关注,论文会员在此为大家搜集整理了“BbsMainAction.java”一文,供大家参考学习
/*
* BbsMainAction.java
*
* Created on 2006年6月14日, 上午1:07
*/
package action.bbs;
import dbservice.hibernate.HibernateService;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import model.
bbs.hibernate.*;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
/**
*
* @author Administrator
* @version
*/
public class BbsMainAction extends Action {
/* forward name="success" path="" */
private final static String SUCCESS = "success";
/**
* This is the action called from the Struts framework.
* @param mapping The ActionMapping used to select this instance.
* @param form The optional ActionForm bean for this request.
* @param request The HTTP Request we are processing.
* @param response The HTTP Response we are processing.
* @throws java.lang.Exception
* @return
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
// 从数据库中读取所有的主题信息
List topicList = TopicUtil.findAll();
if (topicList == null) {
return new ActionForward(mapping.getInput());
}
// 获得HttpSession缓存
HttpSession httpSession = request.getSession();
// 将所有的主题信息存入缓存
httpSession.setAttribute("topiclist", topicList);
List articleCountList = new ArrayList();
for (int i=0; i<topicList.size(); i++) {
String id = String.valueOf(((Topic)topicList.get(i)).getId());
// 统计编号为id的主题空间中的文章数量
int count = HibernateService.getRows("select count(*) from Article article where article.topic.id='" + id + "'");
articleCountList.add(new Integer(count));
}
// 将文章数量信息存入缓存
httpSession.setAttribute("articlecountlist", articleCountList);
return mapping.findForward(SUCCESS);
}
}