• 列表内容

5:数据绑定和表单标签

数据绑定是指将用户输入绑定到领域模型(domain)。
表单标签库包含了 可以在JSP页面中渲染HTML元素的标签。 典型的有form、input、options等。

6:转换器和格式化

是不是有用户输入日期这种情况写才会用到转换器??????
Converter和Formatter都可以将一种对象类型转换为另一种对象类型。Converter是通用元件,可以在应用程序的任意层中使用。而Formatter则专门为web层设计(Formatter的原类型必须是String)。

6.1 Converter

创建一个Converter,必须编写一个实现了…..Converter接口的java类。为了使用刚刚定制的Converter实现类,必须在SpringMVC配置文件中配置一个bean,bean的名称必须是……….ConversionServiceFacyoryBean。这个bean必须包含一个converters属性,它要列出你所编写的所有自己定制的Converter。然后再在annotion-driven元素的conversion-servive属性中赋值为刚才配置文件中所配置bean的id。

6.2 Formatter

Formatter更适合于web层。为了创建Formatter,则要编写一个实现了………Formatter接口的java类。必须实现该接口的parse和print方法。后续的配置与6.1节大体类似,只是具体的bean的class属性要改成FormattingFactoryBean。
另外也可以用FormatterRegistrar来注册Formatter。java类需实现FormatterRegistrar接口。后续配置同上两节。

7:验证器(validator,作用于object级)

输入验证,可以利用Spring自带的验证框架,也可以利用JSR303实现(新项目建议使用JSR303,是正规的java规范)。
Converter和Formatter作用于field级,验证器则作用于object级。它可以判断某一个对象中的所有field是否都是有效的。当应用程序中既使用了Formatter,又使用了validator。调用顺序是:在调用controller期间,将会有一个或多个Formatter被调用,若格式化成功,验证器就会介入(比如验证日期是否正确等)。也就是说:Formatter只负责转换,validator则负责验证转化结果的正确性。

7.1 Spring自带的验证框架

为创建Spring验证器,需实现validator接口。接口包含两个方法。supports:如果验证器能处理指定class,则返回true。validate:验证对象,并将验证错误填入Errors对象。如何填入Errors对象?建议使用ValidationUtils类,它有许多方法来验证错误。
如何配置?其实不需显式注册,但是如果要想人性化提示错误信息,则可以声明一个messagebean,告诉Spring在哪里声明了这些错误的类型。
使用Spring验证器的另一个方法是,在Controller类中编写initBinder方法。将验证器传到WebDataBinder,并调用其validate方法。

7.2 JSR 303验证

在待验证类之前要import相应的jar包,如Size等,然后用@Size等进行标注。其他类中若将处理过的待验证类作为函数形参,则应该用@valid 进行标注。为了让错误信息得到人性化的显示,messages properties文件中应该用键值进行说明。

Spring MVC学习指南(5-7章总结)相关推荐

  1. Spring MVC学习指南(11-12章总结)

    11:上传文件 将介绍如何在SpringMVC中使用Commons FileUpload和Servlet 3上传文件. 在填写表单的html中,必须将html的enctype属性值设置为multipa ...

  2. Spring MVC学习指南(1-4章总结)

    Spring 框架 1.0 前言 依赖注入: 构造器(构造注入) set方法(设值注入) filed方式 (必须引入org......anntation.Autowired) 如何配置依赖注入: XM ...

  3. spring mvc 学习指南二

    Spring控制反转容器的使用 主要介绍Spring如何管理bean和依赖关系. 通过构造器创建一个bean的实例 之前的方法中,可以通过调用ApolicationContext的getBean方法可 ...

  4. spring mvc 学习指南一

    Spring框架 依赖注入技术,作为代码可测试性的一个解决方案已经被广泛应用,很多人在使用中并不区分依赖注入和控制反转(IOC) 简单来说,依赖注入的情况如下,有两个组件A和B,A依赖与B.假定A是一 ...

  5. 《Servlet、JSP和Spring MVC初学指南》——第2章 会话管理 2.1URL重写

    本节书摘来自异步社区<Servlet.JSP和Spring MVC初学指南>一书中的第2章,第2.1节,作者:[加]Budi Kurniawan(克尼亚万) , [美]Paul Deck著 ...

  6. Servlet JSP和Spring MVC初学指南 PDF

    下载地址:网盘下载 Servlet和JSP是开发Java Web应用程序的两种基本技术.Spring MVC是Spring框架中用于Web应用快速开发的一个模块,是当今流行的Web开发框架之一. 本书 ...

  7. Spring MVC 学习总结(九)——Spring MVC实现RESTful与JSON(Spring MVC为前端提供服务)...

    Spring MVC 学习总结(九)--Spring MVC实现RESTful与JSON(Spring MVC为前端提供服务) 目录 一.JSON 1.1.概要 1.2.使用ModelAndView ...

  8. Spring MVC 入门指南(二):@RequestMapping用法详解

    为什么80%的码农都做不了架构师?>>>    一.@RequestMapping 简介 在Spring MVC 中使用 @RequestMapping 来映射请求,也就是通过它来指 ...

  9. Spring MVC 学习笔记 对locale和theme的支持

    Spring MVC 学习笔记 对locale和theme的支持 Locale Spring MVC缺省使用AcceptHeaderLocaleResolver来根据request header中的 ...

最新文章

  1. AS更改初始布局遇到的问题
  2. css text top,text-align属性(css中文本对齐属性)
  3. 鸿蒙智慧屏安卓内核,一切都是假象?荣耀智慧屏翻车,鸿蒙只是安卓的皮肤?...
  4. 移动Web开发实践——解决position:fixed自适应BUG
  5. 编程之美 set 17 拈游戏分析 (2)
  6. 如何用Endnote在论文中插入图片
  7. SAP Spartacus里的concurrently依赖
  8. Java局部变量一定要赋初值
  9. linux-wc命令
  10. 【Flink】报错 KryoException ConcurrentModificationException StackOverflowError
  11. LeetCode 20 Valid Parentheses (C++)
  12. java取整和四舍五入方法
  13. Resnet18详细结构
  14. flutter2.x报错解决type (RouteSettings) => Route<dynamic> is not a subtype of type (RouteSettings) => Rou
  15. python入门之运算符的使用【educoder】
  16. 微信报修小程序源码(近期维护V3.1.0)
  17. 解决YOLOv5算法中的中文标签显示问题
  18. 【Unity】Unity 脚下光圈
  19. prometheus监控zookeeper
  20. Spring boot 分页 无法将类中的构造器应用到给定的类型 PageRequest

热门文章

  1. 用prctl给线程命名
  2. Unity中弧度和角度的相互转换
  3. [数据结构实践项目]变态的停车场管理系统
  4. C#实现离散数学中Kn图一笔画模拟
  5. HC项目本地快速部署文档
  6. ---------- 常用链接 ----------
  7. 数据库应用设计学生宿舍管理系统java+SQL
  8. 解决C盘IE收藏夹复制时提示没有权限,不需要改注册表
  9. Java Types
  10. 函数指针做函数参数 使用总结及其意义