重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!
创新互联网络公司拥有10多年的成都网站开发建设经验,上1000家客户的共同信赖。提供成都网站设计、网站建设、网站开发、网站定制、卖链接、建网站、网站搭建、响应式网站开发、网页设计师打造企业风格,提供周到的售前咨询和贴心的售后服务这篇文章将为大家详细讲解有关Spring MVC数据绑定的原理简介,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
数据绑定概述
在执行程序时,Spring MVC根据客户端请求参数的不同,将请求消息中的信息以一定的方式转换并绑定到控制器类的方法参数中。
这种将请求消息数据与后台方法参数建立连接的过程就是 Spring MVC中的数据绑定。
在数据绑定过程中,Spring MVC框架会通过数据绑定组件(DataBinder)将请求参数串的内容进行类型转换,然后将转换后的值赋给控制器类中方法的形参,这样后台方法就可以正确绑定并获取客户端请求携带的参数。具体的信息处理过程的步骤如下。
(1)Spring MVC将ServletRequest对象传递给 DataBinder。
(2)将处理方法的入参对象传递给 DataBinder。
(3) DataBinder调用ConversionService组件进行数据类型转换、数据格式化等工作,并将 ServletRequest对象中的消息填充到参数对象中。
(4)调用Validator组件对已经绑定了请求消息数据的参数对象进行数据合法性校验。
(5)校验完成后会生成数据绑定结果 BindingResult对象,Spring MVC会将BindingResult对象中的内容赋给处理方法的相应参数。
根据客户端请求参数类型和个数的不同,将 Spring Mvc中的数据绑定主要分为简单数据绑定和复杂数据绑定
1.简单数据绑定
绑定默认数据类型
UserController.java:
package com.ssm.controller; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class UserController { @RequestMapping(value="/selectUser") public String selectUser(HttpServletRequest request) { String id=request.getParameter("id"); System.out.println("id="+id); return "success"; } }