概述此步要点:(1)继承SimpleFormController类(2)构造器中调用setCommandClass方法绑定定命令对象(这里为User类)(3)转换formbean为User类进行业务逻辑操作
步骤二:配置web.xml(和前面HelloWorld实例一样,在此省略)
步骤三:配置spmvc-servlet.xml文件,代码如下:
Xml代码
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/page/" />
<property name="suffix" value=".jsp" />
< span>bean>
<bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/reg.do">regControl< span>prop>
< span>props>
< span>property>
< span>bean>
<bean id="regControl" class="com.asm.RegControl">< span>bean> |
步骤四:根据配置文件完善相应页面在index.jsp设定表单填写页面,主要代码如下:
<form action="<%=request.getContextPath()%>/reg.do" method="post">
用户名:<input type="text" name="username"><br/>
年龄:<input type="text" name="age"><br/>
<input type="submit">
< span>form> |
/page/hello.jsp,主要代码如下:
<body>
世界,你好!(WEB-INF/page)
用户名:${user.username }
年龄:${user.age }
< span>body> |
步骤五:启动服务器,访问到首页,填写表单完成测试。
3、细研SimpleController控制器在RegControl.java中增加如下代码:
Java代码
protected Object formBackingObject(HttpServletRequest request) throws Exception {
System.out.println("formBackingObject方法执行-->01");
setCommandClass(User.class);
return super.formBackingObject(request);
}
protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception {
System.out.println("initBinder方法执行-->02");
super.initBinder(request, binder);
}
protected void onBind(HttpServletRequest request, Object command) throws Exception {
System.out.println("onBind方法执行-->03");
super.onBind(request, command);
}
protected void onBindAndValidate(HttpServletRequest request, Object command, BindException errors)
throws Exception {
System.out.println("onBindAndValidate方法执行-->04");
super.onBindAndValidate(request, command, errors);
} |