import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractCommandController;
import cn.itcast.springmvc.domain.User;
/**
*命令控制器
*/
public class MyCommandController extends AbstractCommandController {
public MyCommandController(){
//注册命令类
this.setCommandClass(User.class);
//命令名称
this.setCommandName("user");
}
@Override
protected ModelAndView handle(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
User u = (User)command;
System.out.println("name:" + u.getName() + " address:" + u.getAddress());
return new ModelAndView("commandView","user",u);
}
}
8、commandView.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
This is commandView.jsp
name:${user.name }
address:${user.address }
age:${user.age }
tel:${user.tel }
9、MyFormController
package cn.itcast.springmvc.controller;
import org.springframework.web.servlet.mvc.SimpleFormController;
import cn.itcast.springmvc.domain.User;
public class MyFormController extends SimpleFormController {
public MyFormController() {
this.setCommandClass(User.class);
this.setCommandName("user");
}
@Override
protected void doSubmitAction(Object command) throws Exception {
User u = (User)command;
System.out.println(u.getName());
System.out.println("doSubmitAction");
super.doSubmitAction(command);
}
}
对应的userForm.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
对应的success.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
This is success.jsp!
10、MyWizardFormController的代码如下:
package cn.itcast.springmvc.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractWizardFormController;
import cn.itcast.springmvc.domain.User;
public class MyWizardFormController extends AbstractWizardFormController {
public MyWizardFormController(){
this.setCommandClass(User.class);
this.setCommandName("user");
}
@Override
protected ModelAndView processCancel(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
return new ModelAndView("helloworld"); //跳转到helloworld.jsp
}
@Override
protected ModelAndView processFinish(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
User u = (User) command;
System.out.println(u);
return new ModelAndView("helloworld"); //跳转到helloworld.jsp
}
}
相应的WEB-INF/wizard/1.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
相应的WEB-INF/wizard/2.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":