如何在springmvc中使用@PathParam传递2个或更多变量?假设我想使用postman测试它,如何做到这一点?

yzuktlbb  于 2023-01-13  发布在  Spring
关注(0)|答案(1)|浏览(256)

我正在尝试使用JPA存储库方法从数据库中获取值
product findByIdNumberOrCifNumber(String idNumber , String cifNumber);
服务类逻辑:-

public ResponseModel FindByCivIDOrCifNumber(String idNumber,String cifNumber) {
    ResponseModel responseModel = new ResponseModel();
    Optional<product> civId = Optional.ofNullable(productRepos.findByIdNumber(idNumber));
    if (civId.isPresent()) {
        responseModel.setResponse(productRepos.findByIdNumberOrCifNumber(idNumber,cifNumber));
    } else {
        errorModel errorModel1 = new errorModel();
enter image description here        errorModel1.setErrorCode(productConstant.INVALID_REQUEST);
        errorModel1.setErrorDescription("Requested Civil Id or CifNUmber is not present");
        responseModel.setErrorModel(errorModel1);
    }
    return responseModel;

}

控制器类:-

@GetMapping("/getByCifNoOrGetByIdNo")
    public ResponseModel getProductByCifNoOrGetByIdNo(@RequestParam String idNumber,@RequestParam String cifNumber )  {
        return productService.FindByCivIDOrCifNumber(idNumber,cifNumber);
    }

Postman :-
请帮我弄清楚如何使它工作:)

5t7ly7z5

5t7ly7z51#

如果您正在寻找传递两个或多个路径变量的答案,并使用postman进行测试,您可以尝试这样做。

@GetMapping("/api/mapping-name/{variable1}/{variable2}")

在这里,您将获得两个路径变量,您可以通过以下语法访问它们

@PathVariable("variable1") datatype variableName

现在在 Postman 请求的网址,你可以简单地给予各自的网址,让我们说:

https://localhost8080/api/mapping-name/:variable1/:variable2

它会自动在参数的路径变量部分给予你一个键值部分,并根据你给的名字预先填充键值。在这个例子中是variable1和variable2。
给予相应的值,它应该工作。

相关问题