spring重定向另一个端口上带有主体(json)的简单rest post

xu3bshqb  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(574)

我有两个Spring休息应用程序。当我向第一个发送数据时,

private Long id;
private String name;
private String surname;
private String productName;
private Double productValue;

首先,我在db中创建一个客户机条目,其中包含以下字段:

private Long id;
private String name;
private String surname;

然后我想重定向到另一个端口,另一个用body处理产品数据的应用程序,包括两个字段:

private String productName;
private Double productValue;
private Long clientId;

要在创建产品后在数据库中创建产品条目,我想重定向回第一个应用程序并显示保存的客户端。
问题是,我应该如何构建我的控制器?我必须使用modelandview吗?-这只是一个后端rest,没有任何前端(从postman运行:)

1sbrub3j

1sbrub3j1#

您可以先用这种方法自动连线 RestTemplate 然后用它给另一个人打电话 api -

@RestController
public class ProductResource {
    @Autowired
    RestTemplate restTemplate;

    @Autowired
    private ProductRepository repository;

    @PostMapping
    public ResponseEntity<Product> saveProduct(@RequestBody Product product) {
        Product productSavedAtClient = repository.save(product);
        Product savedProduct = restTemplate.postForObject("http://some.other.app/product", productSavedAtClient, Product.class);
        return ResponseEntity.ok().body(savedProduct);
    }
}

相关问题