addarticleaction.java
来自「一个实用的CMS管理」· Java 代码 · 共 370 行
JAVA
370 行
package com.suncms.struts2.action;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.util.ServletContextAware;
import org.extremecomponents.table.context.Context;
import org.extremecomponents.table.context.HttpServletRequestContext;
import org.extremecomponents.table.core.Preferences;
import org.extremecomponents.table.core.PreferencesConstants;
import org.extremecomponents.table.core.TableConstants;
import org.extremecomponents.table.core.TableModelUtils;
import org.extremecomponents.table.core.TableProperties;
import org.extremecomponents.table.limit.Limit;
import org.extremecomponents.table.limit.LimitFactory;
import org.extremecomponents.table.limit.TableLimit;
import org.extremecomponents.table.limit.TableLimitFactory;
import com.opensymphony.xwork2.ActionSupport;
import com.suncms.domain.Article;
import com.suncms.domain.Article_Class;
import com.suncms.domain.NewsFtl;
import com.suncms.domain.NewsHtml;
import com.suncms.service.freemarker.MakeNews;
import com.suncms.service.ibatis.ArticleService;
import com.suncms.service.lucene.LuceneIndex;
public class AddArticleAction extends ActionSupport implements
ServletContextAware {
/**
*
*/
private static final long serialVersionUID = 1L;
private String article_title;
private String article_overdue;
private String article_content;
private ServletContext context;
private String row_id;
private String artclass_id;
private String artclass_name;
// private String article_desc;
private String article_status;
// private String article_author_id;
// private String article_author_name;
// private String article_editor_id;
// private String article_editor_name;
// private Integer article_read_count;
// private String article_attach;
// private String create_by;
// private Date create_time;
// private String modify_by;
// private Date modify_time;
// private String article_file;
private List<Article> ArtList;
private Article_Class AC;
private ArticleService articleService = null;
private LuceneIndex luceneService = null;
public Article_Class getAC() {
return AC;
}
public LuceneIndex getLuceneService() {
return luceneService;
}
public void setLuceneService(LuceneIndex luceneService) {
this.luceneService = luceneService;
}
public void setAC(Article_Class ac) {
AC = ac;
}
public String getArticle_title() {
return article_title;
}
public void setArticle_title(String article_title) {
this.article_title = article_title;
}
public String getArticle_overdue() {
return article_overdue;
}
public void setArticle_overdue(String article_overdue) {
this.article_overdue = article_overdue;
}
public String getArticle_content() {
return article_content;
}
public void setArticle_content(String article_content) {
this.article_content = article_content;
}
public ArticleService getArticleService() {
return articleService;
}
public void setArticleService(ArticleService articleService) {
this.articleService = articleService;
}
public void setServletContext(ServletContext context) {
this.context = context;
}
public String execute() throws Exception {
return "success";
}
public String addnew() throws Exception {
// ServletContext servletContext = servlet.getServletContext();
String realPath = context.getRealPath("/");
String newsFileName = "";
// 生成静态新闻
Article article = new Article();
article.setArticle_title(article_title);
article.setArticle_overdue(article_overdue);
article.setArticle_content(article_content);
article.setArtclass_id(AC.getRow_id());
article.setArtclass_name(AC.getClass_name());
article.setArticle_status("1");
article.setCreate_time(new java.util.Date());
article.setModify_time(new java.util.Date());
// MakeNews makeNews = new MakeNews();
// NewsFtl newsFtl = new NewsFtl();
// newsFtl.setRealPath(realPath);
// newsFtl.setTemplateName("news.ftl");
// newsFileName = makeNews.make(article, newsFtl);
// article.setArticle_file(newsFileName);
getArticleService().addNewArticle(article);
return "success";
}
public String addnewpublish() throws Exception {
// ServletContext servletContext = servlet.getServletContext();
String realPath = context.getRealPath("/");
String newsFileName = "";
String indexDir = realPath + "index";
// 生成静态新闻
Article article = new Article();
article.setArticle_title(article_title);
article.setArticle_overdue(article_overdue);
article.setArticle_content(article_content);
article.setArtclass_id(AC.getRow_id());
article.setArtclass_name(AC.getClass_name());
article.setArticle_status("3");
article.setCreate_time(new java.util.Date());
article.setModify_time(new java.util.Date());
NewsHtml nh = new NewsHtml();
nh.setArticle(article);
Article_Class ac = getArticleService().getArticleClassById(
AC.getRow_id());
List<Article_Class> aclist = getArticleService().getArtClassByParId(
ac.getPar_class_id());
nh.setAclist(aclist);
nh.setPar_class_name(ac.getPar_class_name());
nh.setPar_class_id(ac.getPar_class_id());
MakeNews makeNews = new MakeNews();
NewsFtl newsFtl = new NewsFtl();
newsFtl.setRealPath(realPath);
newsFtl.setTemplate_news("news.ftl");
newsFileName = makeNews.make(nh, newsFtl);
article.setArticle_file(newsFileName);
getArticleService().addNewArticle(article);
// LuceneIndex.makeNewsInfoIndex(article,indexDir);
getLuceneService().makeNewsInfoIndex(article, indexDir);
return "success";
}
public String artlist() throws Exception {
// ServletContext servletContext = servlet.getServletContext();
HttpServletRequest request = ServletActionContext.getRequest();
/**
* controller首先需要创建一个Limit
*/
String tableId = "ec";
Context context = new HttpServletRequestContext(request);
LimitFactory limitFactory = new TableLimitFactory(context, tableId);
Limit limit = new TableLimit(limitFactory);
/**
* 得到系统默认的页面显示大小
*/
Preferences preferences = new TableProperties();
preferences.init(null, TableModelUtils.getPreferencesLocation(context));
String crdStr = tableId + "_" + TableConstants.CURRENT_ROWS_DISPLAYED;
/**
* 注意:此处取值时,如果后台配置文件里有配置,就从里面取,反之取15
*/
int defaultRowsDisplayed = Integer.parseInt(preferences
.getPreference(PreferencesConstants.TABLE_ROWS_DISPLAYED));
if (request.getParameter(crdStr) != null) {
defaultRowsDisplayed = Integer.parseInt(request
.getParameter(crdStr));
}
int totalRows = getArticleService().getTotalCount(limit);
limit.setRowAttributes(totalRows, defaultRowsDisplayed);
request.setAttribute("totalRows", totalRows);
Article_Class ac = getArticleService().getArticleClassById(artclass_id);
setArtList(getArticleService().limitQuery(limit, artclass_id));
setArtclass_id(artclass_id);
setArtclass_name(ac.getClass_name());
return "ArtList";
}
public String addprev() throws Exception {
// ServletContext servletContext = servlet.getServletContext();
// setArtList(getArticleService().getArticleByClass(artclass_id));
setArtclass_id(artclass_id);
setAC(getArticleService().getArticleClassById(artclass_id));
return "addprev";
}
public String getArticleById() throws Exception {
// ServletContext servletContext = servlet.getServletContext();
// setArtList(getArticleService().getArticleByClass(artclass_id));
Article article = getArticleService().getArtById(row_id);
setArticle_title(article.getArticle_title());
setArticle_overdue(article.getArticle_overdue());
setArticle_content(article.getArticle_content());
setRow_id(article.getRow_id());
setArtclass_id(article.getArtclass_id());
setArtclass_name(article.getArtclass_name());
setArticle_status(article.getArticle_status());
setAC(getArticleService().getArticleClassById(article.getArtclass_id()));
return "updateprev";
}
public String update() throws Exception {
Article article = new Article();
article.setRow_id(row_id);
article.setArticle_title(article_title);
article.setArticle_overdue(article_overdue);
article.setArticle_content(article_content);
// article.setArtclass_id(AC.getRow_id());
// article.setArtclass_name(AC.getClass_name());
article.setArticle_status("1");
// article.setCreate_time(new java.util.Date());
article.setModify_time(new java.util.Date());
getArticleService().artupdateById(article);
return "success";
}
public String updatepublish() throws Exception {
// ServletContext servletContext = servlet.getServletContext();
String realPath = context.getRealPath("/");
String newsFileName = "";
String indexDir = realPath + "index";
// 生成静态新闻
Article article = new Article();
article.setRow_id(row_id);
article.setArticle_title(article_title);
article.setArticle_overdue(article_overdue);
article.setArticle_content(article_content);
article.setArtclass_id(AC.getRow_id());
article.setArtclass_name(AC.getClass_name());
article.setArticle_status("3");
// article.setCreate_time(new java.util.Date());
article.setModify_time(new java.util.Date());
NewsHtml nh = new NewsHtml();
nh.setArticle(article);
Article_Class ac = getArticleService().getArticleClassById(
AC.getRow_id());
List<Article_Class> aclist = getArticleService().getArtClassByParId(
ac.getPar_class_id());
nh.setAclist(aclist);
nh.setPar_class_name(ac.getPar_class_name());
nh.setPar_class_id(ac.getPar_class_id());
MakeNews makeNews = new MakeNews();
NewsFtl newsFtl = new NewsFtl();
newsFtl.setRealPath(realPath);
newsFtl.setTemplate_news("news.ftl");
newsFileName = makeNews.make(nh, newsFtl);
article.setArticle_file(newsFileName);
getArticleService().artupdateById(article);
// LuceneIndex.updateNewsInfoIndex(article,indexDir);
getLuceneService().updateNewsInfoIndex(article, indexDir);
return "success";
}
public ServletContext getContext() {
return context;
}
public void setContext(ServletContext context) {
this.context = context;
}
public String getRow_id() {
return row_id;
}
public void setRow_id(String row_id) {
this.row_id = row_id;
}
public String getArtclass_id() {
return artclass_id;
}
public void setArtclass_id(String artclass_id) {
this.artclass_id = artclass_id;
}
public String getArtclass_name() {
return artclass_name;
}
public void setArtclass_name(String artclass_name) {
this.artclass_name = artclass_name;
}
public String getArticle_status() {
return article_status;
}
public void setArticle_status(String article_status) {
this.article_status = article_status;
}
public List<Article> getArtList() {
return ArtList;
}
public void setArtList(List<Article> artList) {
ArtList = artList;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?