zoukankan      html  css  js  c++  java
  • Spring注解之Controller中获取请求参数及验证使用


    1.处理request的uri部分的参数:@PathVariable.

    2.处理request header部分的参数:@RequestHeader,@CookieValue
    @RequestHeader 注解,可以把Request请求header部分的值绑定到方法的参数上。
    @CookieValue 可以把Request header中关于cookie的值绑定到方法的参数上。

    3.@RequestParam注解用来接收地址中的参数,参数的格式是http://*****?uid=111111&uname=张三。

    4.@RequestBody注解用来接收request的body中的参数,@RequestBody可以将多个参数放入到一个实体类或者Map中。


    5.参数验证@Valid、@Validated
    @Valid是使用hibernate validation的时候使用
    @Validated是只用spring Validator 校验机制使用,@Validated是@Valid 的一次封装,是spring提供的校验机制使用。@Valid不提供分组功能
    @Validated注解可以用一个模型来接收地址栏中的参数,参数的格式是http://*****?uid=111111&uname=张三。

    @GroupSequence注解对组进行排序

    注意:

    a.BindingResult 对象必须在 @Valid 或@Validated 的紧挨着的后面,否则接收不到错误信息。
    b.一个功能方法上处理多个模型对象时,需添加多个验证结果对象
    c.@Valid 递归的对关联对象进行校验, 如果关联对象是个集合或者数组,那么对其中的元素进行递归校验,如果是一个map,则对其中的值部分进行校验.(是否进行递归验证)

    使用场景如:
    spring mvc + @Valid/@Validated + @RequestBody 接收json同时校验javaBean的数据有效性

  • 相关阅读:
    字符串作为map的key
    类成员函数模板特化
    函数模板特化
    linux 下第一个Libevent代码学习
    linux下libevent安装
    随笔
    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
    字符串处理总结之一(C#String类)
    XPath语法 在C#中使用XPath示例
    C#代码实现邮箱验证C#中及一些常用的正则表达式
  • 原文地址:https://www.cnblogs.com/gsyun/p/6930620.html
Copyright © 2011-2022 走看看