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