あなたの質問では、コントローラメソッドcompanyIdをリクエストパラメータとして使用しようとします。郵便配達員では、依頼主体でcompanyIdを送信しています。私がコメントで言ったように、あなたはURLのセクションで直接リクエストパラメタを送ることができます:/auth/company/delete?companyId = 2。 Springブートは、companyId要求パラメータを検出し、メソッドのcompanyId変数に直接割り当てることができます。
リクエストボディでcompanyIdを送信する場合(コメント内では)、以下のようにメソッドの署名を変更する必要があります。
@RequestMapping(value = "/auth/company/delete", method = RequestMethod.POST, produces = {"application/json", "application/xml"})
@ResponseBody
public ResponseMessage deleteCompany(@RequestBody Map<String, Integer> map) {
return companyManageService.deleteCompany(map.get("companyId"));
}
または:
{2}
:
@RequestMapping(value = "/auth/company/delete", method = RequestMethod.POST, produces = {"application/json", "application/xml"})
@ResponseBody
public ResponseMessage deleteCompany(@RequestBody CompanyDTO company) {
return companyManageService.deleteCompany(company.getCompanyId);
}
public class CompanyDTO {
private Integer companyId;
//getter setter
}
あなたがリクエストボディを使用したいと整数として、コントローラのメソッドの変数に直接整数値をキャッチしたい場合は、あなたのリクエストボディは次のようにする必要がありますコントローラメソッドは次のようになります:
@RequestMapping(value = "/auth/company/delete", method = RequestMethod.POST, produces = {"application/json", "application/xml"})
@ResponseBody
public ResponseMessage deleteCompany(@RequestBody Integer companyId) {
return companyManageService.deleteCompany(companyId);
}
郵便配達員経由で送信しているrequestParamではありません。これはrequestBodyです。リクエストパラメタとしてURLを送信する場合は、あなたのURLは**/auth/company/delete?companyId = 2 ** – barbakini
@barbakiniでも#RequestParamを#RequestBodyに変更してもそれはまだ機能していないので、companyIdを#RequestBodyの文字列への整数で、値が "companyId"の場合:2! –
**/auth/company/delete?companyId = 2 **としてみましたか? requestBodyを変更した場合、メソッドはStringオブジェクトまたはIntegerオブジェクトではなくMapオブジェクトを取得する必要があります。 ** DELCompany(@RequestBody Map body)のように** body.get( "candidateId") – barbakini