Spring HTTP 請求下划線參數轉換為小駝峰參數


Spring HTTP 請求下划線參數轉換為小駝峰參數

場景概述:
最近項目中使用到外部API,對方回傳的參數格式為蛇形命名規則的參數(student_name),而我需要將其轉換為小駝峰規則的參數(studentName),比較常規的做法就是自定義一個轉換器,比較麻煩。以下是后來想到的一種方案

原理

項目中使用的是fastJson,所以這里以fastJson為例。

  1. fastJson在解析字符串到POJO類型時,會自動將 ** _w ** 轉換為 W ,即fastJson會自動轉換蛇形命名規則參數到小駝峰命名規則
  2. 在http請求中,可以使用 @RequestBody String student 獲取請求參數的Json串
  3. 之后解析json串即可

代碼

請求參數

{
	"student_name":"leo",
	"student_age":"000"
}

controller

/**
 * @author leo.z.l
 * @create 2019-10-16  22:20
 */
@RestController
public class Controller {

    @PostMapping(value = "test",consumes ="application/json")
    public void test(@RequestBody String student){
        Student student1 = JSON.parseObject(student, Student.class);
        System.out.println(student1);
    }
}

POJO

/**
 * @author leo.z.l
 * @create 2019-10-16  22:21
 */
@Data
public class Student {

    private String studentName;

    private String studentAge;

}

結果:


免責聲明!

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



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