read()メソッドのパラメーターとして使用するために、URLからIDを取得するのに苦労しています。@PathVariableの使用例を読んで見ましたが、なぜこれが機能しないのかわかりません。
これは私のコントローラークラスです。
@GetMapping("details/{id}")
public String read(@PathVariable int employeeId, Model model)
{
model.addAttribute("students_data", studentsRepo.read(employeeId));
//the line underneath will work using as an example the int 2 in the parameter. But I want the int coming from the url.
//model.addAttribute("students_data", studentsRepo.read(2));
return "details";
}
詳細ページにエラーが表示されます:
Fri Jan 03 12:13:44 CET 2020
There was an unexpected error (type=Not Found, status=404).
No message available
URLの外観の例は次のとおりです。
http://localhost:8080/details?id=2
http://localhost:8080/details?id=2
共有したURLには@RequestParamが含まれ、@ PathVariableは含まれません
@RequestParamを使用する場合、API署名は次のようになります。
@GetMapping("details/")
public String read(@RequestParam("id") int employeeId, Model model)
{
"details";
}
@PathVariableを使用する場合、APIは
@GetMapping("details/{id}")
public String read(@PathVariable("id") int employeeId, Model model)
{
"details";
}
2つのhttps://javarevisited.blogspot.com/2017/10/differences-between-requestparam-and-pathvariable-annotations-spring-mvc.htmlの違いを確認してください
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加