Spring可以通過使用@RequestBody
注解來接收JSON參數。
首先,需要確保項目中已經配置了相關依賴,比如spring-web
和jackson-databind
。
然后,可以在Controller的方法參數上使用@RequestBody
注解,將JSON參數映射到一個Java對象上。示例如下:
@RestController
public class MyController {
@PostMapping("/example")
public void exampleMethod(@RequestBody MyObject myObject) {
// 處理接收到的JSON參數
}
}
在上述示例中,@RequestBody
注解將會自動將請求體中的JSON數據轉換為MyObject
類型的對象,并將其傳遞給exampleMethod
方法。
如果需要接收的JSON數據是一個列表,可以使用List
或Array
類型作為方法參數,如下所示:
@RestController
public class MyController {
@PostMapping("/example")
public void exampleMethod(@RequestBody List<MyObject> myObjects) {
// 處理接收到的JSON參數列表
}
}
注意,要使Spring能夠正確地將JSON轉換為Java對象,JSON字段的名稱應與Java對象中的屬性名稱匹配。可以使用@JsonProperty
注解在Java對象中指定JSON字段的名稱,以便進行映射。示例如下:
public class MyObject {
@JsonProperty("name")
private String myName;
// getter和setter方法
}
在上述示例中,name
字段的值將會映射到myName
屬性中。