• 在Spring MVC框架中,数据绑定有这样几层含义:
    • 绑定请求参数输入值到领域模型;
    • 模型数据到视图的绑定(输入验证失败时);
    • 模型数据到表单元素的绑定(如下拉列表选项值由控制器初始化)。
  • 表单标签库中包含了可以用在JSP页面中渲染HTML元素的标签。
  • JSP页面使用Spring表单标签库时,必须在JSP页面开头处声明taglib指令:
    1. <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
    | 名称 | 作用 | | —- | —- | | form | 渲染表单元素 | | Input | 渲染元素 | | Password | 渲染元素 | | Hidden | 渲染元素 | | Textarea | 渲染textarea元素 | | Checkbox | 渲染一个元素 | | Checkboxes | 渲染多个元素 | | Radiobutton | 渲染一个元素 | | Radiobuttons | 渲染多个元素 | | Select | 渲染选择元素 | | Option | 渲染一个选项元素 | | Options | 渲染多个选项元素 | | Errors | 在span元素中渲染字段错误 |

JSON数据交互

Spring MVC在数据绑定的过程中,需要对传递数据的格式和类型进行转换,它既可以转换String等类型的数据,也可以转换JSON等其他类型的数据。

  • JSON(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式。与XML一样,JSON也是基于纯文本的数据格式。
  • 它有两种数据结构:
    • 对象结构
    • 数组结构
  • 为实现浏览器与控制器类之间的JSON数据交互,Spring MVC提供了MappingJackson2HttpMessageConverter实现类默认处理JSON格式请求响应。该实现类利用Jackson开源包读写JSON数据,将Java对象转换为JSON对象和XML文档,同时也可以 将JSON对象和XML文档转换为Java对象。
  • Jackson开源包:
    • jackson-annotations-2.9.4.jar:JSON转换注解包。
    • jackson-core-2.9.4.jar:JSON转换核心包。
    • jackson-databind-2.9.4.jar:JSON转换的数据绑定包。
  • 以上3个Jackson的开源包可通过地址“http://mvnrepository.com/artifact/com.fasterxml.jackson.core”下载。
  • 在使用注解开发时,需要用到两个重要的JSON格式转换注解:@RequestBody和@ResponseBody。
    • @RequestBody:用于将请求体中的数据绑定到方法的形参中,该注解应用在方法的形参上。
    • @ResponseBody:用于直接返回return对象,该注解应用在方法上。