自訂了GsonHttpMessageConverter
來完成JSON -> Bean的轉換。像這樣:
@Bean
public static Gson gsonBuilder(){
return new GsonBuilder()
.setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES)
.serializeNulls()
.create();
}
@Bean
public GsonHttpMessageConverter gsonHttpMessageConverter(Gson gson) {
GsonHttpMessageConverter converter = new GsonHttpMessageConverter();
converter.setGson(gson);
return converter;
}
在Controller中我這樣用:
@PutMapping
Object insert(@RequestBody Book book){
bookService.insertOne(book);
return book;
}
請求的RequestBody資料長這樣:
{
"name":"我是书名",
"price":23.33
}
我希望在Controller中能這樣接收參數:
@PostMapping
Object operate(String name,Double price){
// 这里有一些操作
return null;
}
在不討論這樣做是否合理的情況下,想請教大家該如何實現?
根據你的期望情況來看,用ssm的話,直接用@requestparam來接收前端請求過來的參數即可,也可以自訂物件來接收這些參數。個人理解^~^ ...原諒我沒有用過springboot