我正在创建一个样本Spring MVC Web应用程序来打印问候语 信息。当我运行项目时,它显示HTTP状态404错误。 我使用的是Eclipse IDE,并且我添加了Spring Framework的所有JAR 4.2.6(因为我混淆了哪个JARS完全配置)以及公共 - logging-1.1.1 JAR。我的项目代码如下
的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
<display-name>SpringMVCHelloWorld</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>spring-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-
class>
</servlet>
<servlet-mapping>
<servlet-name>spring-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
spring-dispatcher-servlet.xml的代码
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="HandlerMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">
</bean>
<bean name="/index.jsp" class="beans.HelloController">
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/">
</property>
<property name="suffix" value=".jsp">
</property>
</bean>
</beans>
HelloController.java的代码
package beans;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class HelloController implements Controller {
@Override
public ModelAndView handleRequest(HttpServletRequest req,
HttpServletResponse res) throws Exception {
ModelAndView mav=new ModelAndView("HelloPage");
mav.addObject("msg","Hi This is the First Spring MVC Application");
return mav;
}
}
HelloPage.jsp的代码
${msg}
错误日志
WARNING: No mapping found for HTTP request with URI [/SpringMVCHelloWorld/]
in DispatcherServlet with name 'spring-dispatcher'
答案 0 :(得分:0)
根据我对spring的体验,您可以在课程顶部添加@Controller
或@RestController
注释,而不是实现控制器,然后{j} @RequestMapping
添加到您想要的网址。因此你可以:
@RestController
@RequestMapping("/")
public class HelloController {
@RequestMapping(value = "SpringMVCHelloWorld", method = RequestMethod.GET)
public ModelAndView helloWorldRequest(){
ModelAndView mav = new ModelAndView("HelloPage");
mav.addObject("msg","Hi This is the First Spring MVC Application");
return mav;
}
}
您可以使用不同的方法和@RequestMapping
注释映射到其他网址。
希望这能解决你的问题。