我有一个spring mvc项目。我正在尝试删除公告,但收到404错误,似乎无法找到该方法。我所有其他的映射都工作正常,我已经以相同的方式完成了此操作,因此我似乎无法弄清楚哪里出了错
这是我用于删除公告的按钮的链接,它可以正确获取网址中的ID,所以我知道这是可行的
<c:url value="/deleteAnnouncement?id=" var="deleteAnnouncementURL" />
<security:authorize access="hasRole('ADMIN')">
<a href= "${deleteAnnouncementURL}${announcements.id}" class= "btn-outline-danger btn-sm pull-right">Delete</a>
</security:authorize>
这是我在控制器中的方法
@RequestMapping(value = {"/deleteAnnouncement/{id}"}, method = RequestMethod.GET)
public String deleteAnnouncement(@PathVariable("id") int id, Model model)
{
Announcement announcement = announcementService.findOne(id);
announcementService.deleteAnnouncement(announcement);
return "success";
}
任何帮助将不胜感激!
答案 0 :(得分:0)
您发送请求的方式是错误的。
从前端开始,您将作为请求参数发送的值,但在后端,您将其作为路径变量接收。
更改value =“ / deleteAnnouncement?id =
到
value =“ / deleteAnnouncement
并在URL和ID之间添加斜杠,如下所示。
$ {deleteAnnouncementURL} / $ {announcements.id}