首页  >  问答  >  正文

java - Spring Boot 接收JSON格式参数的问题。

目前情况:

自定义了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;
}

在不讨论这样做是否合理的情况下,想请教大家该如何实现?

習慣沉默習慣沉默2674 天前1152

全部回复(1)我来回复

  • 怪我咯

    怪我咯2017-06-23 09:16:33

    根据你的期望情况来看,用ssm的话,直接用@requestparam来接收前端请求过来的参数即可,也可以自定义对象来接收这些参数。个人理解^~^ ...原谅我没有用过springboot

    回复
    0
  • 取消回复