📄 addnewscontroller.java
字号:
package org.coldice.webapp.controller;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.coldice.model.News;
import org.coldice.service.CategoryManager;
import org.coldice.service.NewsManager;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
public class AddNewsController extends SimpleFormController {
/** Logger for this class and subclasses */
protected final Log logger = LogFactory.getLog(getClass());
private NewsManager newsManager;
private CategoryManager categoryManager;
/**
* @param categoryManager
* the categoryManager to set
*/
public void setCategoryManager(CategoryManager categoryManager) {
this.categoryManager = categoryManager;
}
/**
* @param newsManager
* the newsManager to set
*/
public void setNewsManager(NewsManager newsManager) {
this.newsManager = newsManager;
}
public AddNewsController() {
// TODO Auto-generated constructor stub
setCommandName("news");
setCommandClass(News.class);
}
/**
* 覆盖referenceData()方法来发掘显示在下拉框中的某些选项,或者作为检查框组一部分的选择。
*
*/
protected Map referenceData(HttpServletRequest request) throws Exception {
if (logger.isDebugEnabled()) {
logger.debug("referenceData()");
}
Map<String, Collection<?>> map = new HashMap<String, Collection<?>>();
map.put("categorys", categoryManager.listCategorys());
return (map);
}
/***************************************************************************
* 覆盖formBackingObject()方法来消除实例化简单命令类所带来的Spring的默认行为,
* 或者在只需要空的命令对象支持表单时设定commandClass属性。
*/
protected Object formBackingObject(HttpServletRequest request)
throws Exception {
News news = new News();
return news;
}
public ModelAndView onSubmit(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
if (logger.isDebugEnabled()) {
logger.debug("entering 'onSubmit' method...");
}
News news = (News) command;
// add the news
if (request.getParameter("add") != null) {
news.setNewstitle(request.getParameter("newstitle"));
news.setNewscontent(request.getParameter("newscontent"));
news.setAuthor(request.getParameter("author"));
news
.setCategory(Integer.parseInt(request
.getParameter("category")));
news.setNewsdate(new Date());
newsManager.addNews(news);
logger.debug("add news..." + news.getNewstitle());
return new ModelAndView(getSuccessView());
}
return super.onSubmit(request, response, command, errors);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -