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