Spring MVC的表单掌握器[Java编程]
本文“Spring MVC的表单掌握器[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
概述
大大都Web利用城市碰到需求填写表单的页面,当表单提交成功后,表单的数据被传送给Web服务器中处理.处理成功后导向到一个成功页面,假如操作失利则导向到一个错误报告页面.此外,在表单数据处理之前还会举行表单数据的考证,保证客户端提交的表单数据是合理有效的,假如数据不合理,恳求返回到原表单页面中,以便用户按照错误信息举行改正.
假定你想成为论坛的用户时,必须填写一张用户注册表单,这大概包含用户名、密码、Email等注册信息.用户提交表单后,服务器考证注册数据合理性,假如你填写的信息是合理的,系统将在数据库中成立一个新用户,用户注册就完成了.
用户注册表单掌握器
通过扩大SimpleFormController可以按照尺度的表单处理流程处理用户注册的恳求,UserRegisterController用于负责处理用户注册的恳求:
代码清单 1 UserRegisterController
package com.baobaotao.web.user;
在①处指定表单对象的范例,以便掌握器自动将表单数据绑定到表单对象中,你也可以直接在配置文件中通过commandClass属性举行设置:
import org.springframework.web.servlet.mvc.SimpleFormController;
import com.baobaotao.domain.User;
import com.baobaotao.service.BbtForum;
public class UserRegisterController extends SimpleFormController {
private BbtForum bbtForum;
public UserRegisterController(){
setCommandClass(User.class); ①指定号令对象(这时也称表单对象)的范例
}
public void setBbtForum(BbtForum bbtForum) {
this.bbtForum = bbtForum;
}
②通过该办法处理表单提交恳求
protected void doSubmitAction(Object command) throws Exception {
User user = (User) command;
bbtForum.registerUser(user);
}
}
<property name="commandClass" value=" com.baobaotao.domain.User"/>
在②处复写了doSubmitAction()办法,在该办法内部通过调用业务层的bbtForum保存表单对象,成立新用户.当你不需求返回模子对象给成功页面时,复写doSubmitAction()办法是最佳的挑选,因为该办法没有返回值.假如需求返回模子对象给成功页面,那么就必须复写表单掌握器的onSubmit ()办法.用户注册成功后,我们普通需求在成功页面中按照用户信息供应本性化的内容,这就要求掌握器返回呼应的User模子对象,此时需求在UserRegisterController中复写onSubmit ()办法:
…
protected ModelAndView onSubmit (Object command, BindException errors)
throws Exception {
User user = (User) command;
bbtForum.registerUser(user);
return new ModelAndView(getSuccessView(), "user", user);①user中包含注册用户的信息
}
…
当你复写onSubmit ()办法后,doSubmitAction()办法就不会得到履行了, onSubmit ()办法比doSubmitAction()办法具有更高的调用优先级,所以你只要按照要求复写二者中的一个办法便可以了.在onSubmit ()中返回的ModelAndView的逻辑视图名应当是通过表单掌握器的successView属性指定而不该该硬编码,所以在①处我们通过getSuccessView()获得这个配置值.
表单掌握器的工作流程从表单页面提交开始,处理成功后转向成功页面,这个流程触及到两个视图:表单页面和成功页面,这需求在表单掌握器中通过属性举行定义:
<bean name="/registerUser.html" class="com.baobaotao.web.user.UserRegisterController">
<property name="bbtForum" ref="bbtForum" />
<property name="formView" value="register" /> ①表单录入页面(逻辑视图名,下同)
<property name="successView" value="registerSuccess" /> ②成功页面
</bean>
以上是“Spring MVC的表单掌握器[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |