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

📄 shownewsaction.java

📁 在线考试功能
💻 JAVA
字号:
/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package com.onlinestudy.action;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

import com.onlinestudy.domain.News;
import com.onlinestudy.domain.NewsClasses;
import com.onlinestudy.service.NewsService;

/** 
 * MyEclipse Struts
 * Creation date: 01-15-2009
 * 
 * XDoclet definition:
 * @struts.action parameter="status" validate="true"
 */
public class ShowNewsAction extends DispatchAction {
	
	NewsService nsc;
	//显示新闻主页面
	public ActionForward newsIndexPage(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		//按类查找
		List newsClassesList = nsc.selectNewsClasses();
		for(int i = 0; i<newsClassesList.size(); i++){
			int id  = ((NewsClasses)newsClassesList.get(i)).getId();
			String hql = "from News as n where n.classes.id="+id+" order by date desc";
			int offset = 0;
			int length = 8;
			List list = nsc.selectNewsByClass(hql, offset, length);
			request.setAttribute("list_"+i, list);
		}
		request.setAttribute("newsClassesList", newsClassesList);
		
		//最新新闻
		String hql = "from News order by date desc";
		int offset = 0;
		int length = 10;
		List latestNews = nsc.selectNewsForPage(hql, offset, length);
		request.setAttribute("latestNews", latestNews);
		
		ActionForward forward= new ActionForward("NewsView");
		return forward;
	}
	
	//显示分类新闻页面
	public ActionForward newsForPage(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		//按类查找	
		int id =Integer.parseInt(request.getParameter("id")) ;
		String newsClassName = nsc.selectNewsClassesById(id).getName();
		int currentPage = 1;
		currentPage = Integer.parseInt(request.getParameter("nextpage"));
		int totalNews = nsc.selectAllNewsId("select id from News as n where n.classes.id="+id);       
		int length = 20;       //读取数据记录数
		String hql = "from News as n where n.classes.id="+id+" order by date desc";
		int totalPages = (totalNews-1)/length+1;
		if(currentPage < 1){
				currentPage = 1;
			}										
		if(currentPage > totalPages){
			currentPage = totalPages;
		}
		int offset = (currentPage-1)*length;  //开始取数据的下标
		List list = nsc.selectNewsForPage(hql, offset, length);
		List newsClassesList = nsc.selectNewsClasses();
		
		request.setAttribute("totalNews", Integer.toString(totalNews));
		request.setAttribute("totalPages", Integer.toString(totalPages));
		request.setAttribute("currentPage", Integer.toString(currentPage));
		request.setAttribute("list", list);	
		request.setAttribute("newsClassName",newsClassName );
		request.setAttribute("newsClassesList", newsClassesList);
		ActionForward forward= new ActionForward("NewsForPageView");
		return forward;
	}
	
	//显示新闻内容
	public ActionForward newsContent(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		int id =Integer.parseInt(request.getParameter("id")) ;
		
		News news = nsc.selectNewsById(id);
		int count = news.getBrowseCount();
		count = count + 1;
		news.setBrowseCount(count);
		nsc.updateNews(news);
		List newsClassesList = nsc.selectNewsClasses();
		
		request.setAttribute("news", news);
		request.setAttribute("newsClassesList", newsClassesList);
		ActionForward forward= new ActionForward("NewsContentView");
		return forward;
	}

	public void setNsc(NewsService nsc) {
		this.nsc = nsc;
	}
}

⌨️ 快捷键说明

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