package net.roseindia.controller;
import net.roseindia.service.ArticleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
@RequestMapping("/articles")
public class DeleteController {
@Autowired
private ArticleService articleService;
@RequestMapping(value="/delete")
public String deleteService(@RequestParam("ID") final Integer ids) {
System.out.println("hello");
articleService.deleteService(ids);
return "redirect:/articles";
}
}
可能在这里~~~~~~~~~~~~~~~~~~~~~~
<td><a href="/articles/delete.do?ID=${article.articleId}">delete</a></td>
这个问题只是让我抓了很多。我想这可能是href的问题。控制器无法掌握href的链接
(第二次尝试)但似乎它也不能像这样工作
import net.roseindia.service.ArticleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
@RequestMapping("/articles")
public class DeleteController {
@Autowired
private ArticleService articleService;
@RequestMapping(value="/delete/{ID}")
public String deleteService(@PathVariable("ID") final Integer ids) {
System.out.println("hello");
articleService.deleteService(ids);
return "redirect:/articles";
}
}
td><a href="/articles/delete/${article.articleId}.html">delete</a></td>
这是我的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
Promble是
HTTP状态404 - /articles/delete/2.html
输入状态报告
消息/articles/delete/2.html
说明请求的资源不可用。
答案 0 :(得分:1)
Http 404错误的原因是没有找到您的http请求的映射。从您的配置中可以看出您的控制器和请求映射未配置。
您需要使用以下内容配置调度程序:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
然后在servlet-context.xml
中,您需要按如下方式定义 component-scan 来扫描注释驱动的控制器:
<annotation-driven />
<context:component-scan base-package="net.roseindia.controller" />