gpt4 book ai didi

java - 多个 Java 对象到单个端点

转载 作者:行者123 更新时间:2023-12-02 10:48:27 25 4
gpt4 key购买 nike

我不想为 Spring Boot Rest Controller 构建 case 语句,而是想让 Spring 使用正确的端点。我什至不确定这是否可能,但我希望宇宙能够拯救我。

  @PostMapping("/endpoint")
public String one(Greeting greet) {
return "Greeting Posted";

}

@PostMapping("/endpoint")
public String two(Address addr) {
return "Address Posted";

}

当前错误

Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'RController' method 
public java.lang.String com.example.controller.RController.two(com.example.model.Address)
to {[/endpoint],methods=[POST]}: There is already 'RController' bean method
public java.lang.String com.example.controller.RController.one(com.example.model.Greeting) mapped.

最佳答案

这是不可能的。 这是不明确的。

作为一种良好实践,如果 2 个资源将以不同方式处理数据,则必须为每个资源创建不同的端点。

或者为您提供可能的解决方法,它创建一个 ViewModel 对象并仅用一种方法处理它。

public class GreetingAddressVM {

private Address address;

private Greeting greeting;

}

我更喜欢为每个操作创建不同的映射。

关于java - 多个 Java 对象到单个端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52371574/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com