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

📄 newsaction.java

📁 spring+hibernate新闻系统
💻 JAVA
字号:
package com.pure.web.action.news;

import java.util.List;

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

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;

import com.pure.bean.News;
import com.pure.bean.NewsFtl;
import com.pure.comm.ParamUtil;
import com.pure.freemarker.MakeNews;
import com.pure.page.Page;
import com.pure.page.PageHelper;
import com.pure.sys.Constant;

public class NewsAction extends BaseAction {
	protected final Log logger = LogFactory.getLog(getClass());

	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String action = ParamUtil.getString(request, "action", "toList");

		if ("insertNews".equalsIgnoreCase(action)) {
			return insertNews(mapping, form, request, response);
		}

		if ("removeNews".equalsIgnoreCase(action)) {
			return removeNews(mapping, form, request, response);
		}

		return toList(mapping, form, request, response);
	}

	public ActionForward insertNews(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {

		// 取真实路径
		ServletContext servletContext = servlet.getServletContext();
		String realPath = servletContext.getRealPath("/");
		String newsFileName = "";

		DynaActionForm dyForm = (DynaActionForm) form;
		News news = (News) dyForm.get("vo");

		// 生成静态新闻
		MakeNews makeNews = new MakeNews();
		NewsFtl newsFtl = new NewsFtl();
		newsFtl.setRealPath(realPath);
		newsFtl.setTemplateName("news.ftl");
		newsFileName = makeNews.make(news, newsFtl);

		news.setFileName(newsFileName);
		for(int i=0;i<100;i++)
		this.getNewsService().save(news);
		dyForm.set("vo", new News());

		return mapping.findForward("toNewsList");
	}

	public ActionForward toList(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String contextPath = request.getContextPath();
		// 取真实路径
		ServletContext servletContext = servlet.getServletContext();
		String realPath = servletContext.getRealPath("/");

		int perPage = 10;
		int viewPage = 10;
		int cPage = ParamUtil.getInt(request, "page", 1);
		String totalHql = "select count(id) from News";
		PageHelper pageHelper = new PageHelper(request);
		perPage = pageHelper.doCustomPerPage(perPage);

		Page page = new Page();
		page.setPerPage(perPage);
		page.setPage(cPage);
		page.setViewPage(viewPage);
		page.setRealPath(realPath);
		page.setPageTemplatePath("/WEB-INF/templates/page");
		page.setPageTemplate("page.ftl");
		page.setHql("from News news order by news.id desc ");
		page.setTotal(this.getNewsService().getTotal(totalHql));
		page.setContextPath(contextPath);
		page.setUrl("newsList" + Constant.FILEPREFIX);
		page.setStartRs((cPage - 1) * perPage);

		List newsList = this.getNewsService().getList(page);
		request.setAttribute("newsList", newsList);
		request.setAttribute("page", pageHelper.getPageBreakStr(page));
		return mapping.findForward("toNewsList");
	}

	public ActionForward removeNews(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String[] id = request.getParameterValues("id");
		if (null != id) {
			for (int i = 0; i < id.length; i++) {
				this.getNewsService().remove(Integer.parseInt(id[i]));
			}
		}
		return toList(mapping, form, request, response);
		/*
		 * ActionForward goUrl = new ActionForward();
		 * goUrl.setPath("/newsList.do?action=toList"); return goUrl;
		 */
	}
}

⌨️ 快捷键说明

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