Java 投递和接收结果

Java 投递和接收结果,java,android,spring,spring-boot,Java,Android,Spring,Spring Boot,安卓空间 void post(Food food) { Gson gson = new Gson(); String jsonFood = gson.toJson(food); RestTemplate restTemplate = new RestTemplate(); restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter()); restTem

安卓空间

void post(Food food)
{
    Gson gson = new Gson();
    String jsonFood = gson.toJson(food);

    RestTemplate restTemplate = new RestTemplate();
    restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());

    restTemplate.postForEntity(URL, jsonFood, String.class);
}
后端空间

@PostMapping("/food")
public void postFood(@RequestBody String foodJson)
{
    Food food = new GsonBuilder().create().fromJson(foodJson, Food.class);

    String id = createId(food);
    // now how do I send back saying I got this and here is an id?

}

收到后,我想回复,说我得到了信息并发回了一个ID。

您可以创建一个响应模型

    public class PostFoodResponse{
       private String id;
       private String response;
       //.. constructor, getter setter
    }
在代码中,创建PostFoodResponse集数据的对象,并将该对象作为json响应发送回

@PostMapping("/food")
public String postFood(@RequestBody String foodJson)
{
    Food food = new GsonBuilder().create().fromJson(foodJson, Food.class);

    String id = createId(food);
    // now how do I send back saying I got this and here is an id?
    PostFoodResponse response = new PostFoodResponse(id, "I got this");
    return new GsonBuilder().create().toJson(response);

}

SpringBoot将使用Jackson自动将json转换为封面下的模型对象

@PostMapping("/food")
public YourResponse postFood(@RequestBody Food food)
{
    String id = createId(food);
    return new YourResponse(id,"hello World");
}
响应对象

 public class YourResponse{
       private String id;
       private String response;
       //.. constructor, getter setter
 }

作为响应发送回去,我如何做?在客户端,我如何获得响应?很抱歉,这是显而易见的。你在android上使用哪个网络库?将json数据从网络响应解析到android应用程序中。阅读网络库的文档以了解更多信息