springboot接收json對象字串並校驗參數


參數校驗的話首先要在pom.xml添加依賴

 
        
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency>
 
        

 



1、建一個驗證參數的實體NodeVo.java
 
        
package com.spring.first.vo;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
public class NodeVo {
    @NotNull(message = "name不能為空")
    @NotBlank(message = "name不能為空")//制定一個規則 name不能為空
    private String name;

    private String title;
    private  int  status;
    private  int  sort;
    private  int pid;
    private int level;
    public String getName(){
        return name;
    }

    public void setName(String name){
        this.name=name;
    }

    public String getTitle(){
        return title;
    }
    public void setTitle(String title){
        this.title=title;
    }


    public int getStatus(){
        return status;
    }
    public void setStatus(int status){
        this.status=status;
    }

    public int getSort(){
        return sort;
    }
    public void setSort(int sort){
        this.sort=sort;
    }

    public void setPid(int pid){
        this.pid=pid;
    }
    public int getPid(){
        return pid;
    }

    public void setLevel(int level){
        this.level=level;
    }
    public int getLevel(){
        return level;
    }
}
 
        

 



2、然后在controller里面寫業務代碼
package com.spring.first.controller;
import javax.annotation.Resource;
import javax.validation.Valid;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

import com.spring.first.service.DemoService;
import com.spring.first.service.NodeService;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import com.spring.first.domain.*;
import com.spring.first.vo.NodeVo;
import java.util.List;
@RestController
public class DemoController {

 @RequestMapping(value = "/loadTree2",method = RequestMethod.POST,produces = "application/json;charset=UTF-8")
 @ResponseBody

// 這個方法表示接收json對象 {"id":952,"name":"555","title":"7777","status":1,"sort":1,"pid":360,"level":3}
// 用NodeVo驗證類來驗證json對象中的參數是否符合條件

public Object loadTree( @Valid @RequestBody  NodeVo jsonObject) {
   return jsonObject;     //返回一個驗證結果對象,如果是符合條件的則直接返回數據,否則返回一個消息對象

 }

}

 

最后在postman里面測試一下結果
如果是傳一個name為空的json對象過來

 

 那么結果將返回

 

 如果傳的參數滿足驗證條件,結果將會是如下圖

 

 完結!

 

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM