jsp页面和控制器中的方法之间的java请求映射不起作用
我有一个spring mvc项目。我试图删除一条公告,但我收到一个404错误,它似乎找不到方法。我的其他所有映射都很好,我也是这样做的,所以我似乎无法找出哪里出了问题
这是我删除公告按钮的链接,它正确地获取了url中的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";
}
任何帮助都将不胜感激
# 1 楼答案
你发送请求的方式是错误的
从前端开始,将值作为请求参数发送,但在后端,将其作为路径变量接收
Change value=“/deleteAnnouncement?id=
到
value=“/deleteAnnouncement”
并在URL和id之间添加斜杠,如下所示
${deleteAnnouncementURL}/${announcements.id}