zoukankan      html  css  js  c++  java
  • <mvc:annotation-driven>

     <mvc:annotation-driven>会自动注册RequestMappingHandlerMapping、

                     RaquestMappeingHandlerAdapter、

                    ExceptionHandlerExceptionResolver

    提供以下支持:

      支持使用ConversionService实例对表单参数进行类型转换

      支持使用@NumberFormatannotattion、@DateTimeFormat注解完成数据类型的格式化

      支持使用@Valid注解对JavaBean实例进行JSR 303 验证

      支持使用@RequestBody和@ResponseBody注解

    数据校验

    1、配置校验

      1、使用JSR 303验证标准

      2、加入hibernate validator 验证框架

      3、在SpringMVC配置文件中添加<mvc:annotation-driven/>

      4、需要在bean的属性上添加对应的注解

      5、在目标方法bean类型属性的前面添加@valid注解

    2、配置错误跳转页面

    验证出错的错误信息保存在BindingResult中 可以通过查看BindingResult判断是否出错,定制跳转页面

    注意:需要校验的Bean对象和其他绑定结果对象或错误对象是成对出现的,他们之间不允许声明其他的入参

     3、错误信息回显

      页面显示所有错误信息:

      <form:errors path="*"></form:errors>

      也可以将form加在对应字段后面显示具体的错误

       <form:errors path="lastName"></form:errors>

    4、错误消息定制

      1、编写国际化文件   i18n.properties

      文件中为键值对:

          键为 :校验注解类名(前缀).modelAttribute.属性名.属性类型名

            pattern.user.password

            NotEmpty.employee.lastName

         注:

            required做前缀:@RequiredParam("param1")标注了一个入参,但是该参数不存在

            typeMismatch做前缀:数据绑定时类型不匹配问题

            methodInvocation:springMVC在调用处理方法是发生了错误

          值为 :消息内容

      2、配置国际化文件

          SpringMVC.xml中加入:

    1 <bean id="messageSource"     class="org.springframework.context.supportResourceBundleMessageSource">
    2 <property name="basename" value="i18n"></property>
    3 </bean>

     

  • 相关阅读:
    java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)
    Java里的构造函数(构造方法)
    Java里this的作用和用法
    JAVA中的重载和重写
    从键盘接收字符类型的数据并实现剪刀石头布的规则
    使用Notepad++编码编译时报错(已解决?)
    云就是网络,云计算呢
    使用JavaMail创建邮件和发送邮件
    mysql锁机制
    java中几种常用的设计模式
  • 原文地址:https://www.cnblogs.com/the-wang/p/8108567.html
Copyright © 2011-2022 走看看