createarticlecontroller.java

来自「Hibernate基础教程一书源码.Hibernate是一个持久层开源框架」· Java 代码 · 共 53 行

JAVA
53
字号
package com.hibernatebook.spring.controller;

import javax.servlet.http.HttpServletRequest;

import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;

import com.hibernatebook.spring.Article;
import com.hibernatebook.spring.Paper;
import com.hibernatebook.spring.dao.PaperDao;
import com.hibernatebook.spring.form.CreateArticle;

public class CreateArticleController extends SimpleFormController {
	
	private PaperDao paperDao;
	
	@Override
	protected ModelAndView onSubmit(Object command) {
		CreateArticle form = (CreateArticle)command;
		Integer paperId = form.getPaperId();
		Article article = new Article(
				form.getHeadline(),
				form.getByline(),
				form.getContent());
		Paper paper = getPaperDao().createArticle(paperId,article);
		return new ModelAndView(getSuccessView(),"paper",paper);
	}

	public PaperDao getPaperDao() {
		return paperDao;
	}

	public void setPaperDao(PaperDao paperDao) {
		this.paperDao = paperDao;
	}

	@Override
	protected void onBindOnNewForm(HttpServletRequest request, Object command) throws Exception {
		CreateArticle form = (CreateArticle)command;
		Paper paper = getPaperDao().getPaper(form.getPaperId());
		request.setAttribute("paper",paper);
	}

	@Override
	protected void onBindAndValidate(HttpServletRequest request, Object command, BindException errors) throws Exception {
		CreateArticle form = (CreateArticle)command;
		Paper paper = getPaperDao().getPaper(form.getPaperId());
		request.setAttribute("paper",paper);
	}

}

⌨️ 快捷键说明

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