Java 这里没有映射RequestMappingHandlerMapping有什么原因吗?
我是一名学习java spring框架的学生(目前) 我正在复习(以及给出的练习)我用mybatis学到的东西 我很难赶上(老师,太快了) 我想做的是得到一个带有简单图表的页面,可以在图表中显示公司的员工名单 但是,当我尝试运行并单击一个链接(用于实际工作)时,我得到以下结果: WARN PageNotFound-找不到URI为的HTTP请求的映射 名为的DispatcherServlet中的[spring\u mvc13\u batisTest/list] “dispatcherServlet” 第页显示404错误的错误消息 这是我的Java 这里没有映射RequestMappingHandlerMapping有什么原因吗?,java,spring,maven,model-view-controller,Java,Spring,Maven,Model View Controller,我是一名学习java spring框架的学生(目前) 我正在复习(以及给出的练习)我用mybatis学到的东西 我很难赶上(老师,太快了) 我想做的是得到一个带有简单图表的页面,可以在图表中显示公司的员工名单 但是,当我尝试运行并单击一个链接(用于实际工作)时,我得到以下结果: WARN PageNotFound-找不到URI为的HTTP请求的映射 名为的DispatcherServlet中的[spring\u mvc13\u batisTest/list] “dispatcherServlet
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework.samples.service.service</groupId>
<artifactId>spring_mvc13_batisTest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<!-- Generic properties -->
<java.version>1.6</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- Web -->
<jsp.version>2.2</jsp.version>
<jstl.version>1.2</jstl.version>
<servlet.version>2.5</servlet.version>
<!-- Spring -->
<spring-framework.version>4.1.3.RELEASE</spring-framework.version>
<!-- Hibernate / JPA -->
<hibernate.version>4.2.1.Final</hibernate.version>
<!-- Logging -->
<logback.version>1.0.13</logback.version>
<slf4j.version>1.7.5</slf4j.version>
<!-- Test -->
<junit.version>4.11</junit.version>
</properties>
<dependencies>
<!-- Spring MVC -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring-framework.version}</version>
</dependency>
<!-- Other Web dependencies -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>${jstl.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>${jsp.version}</version>
<scope>provided</scope>
</dependency>
<!-- Spring and Transactions -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring-framework.version}</version>
</dependency>
<!-- Logging with SLF4J & LogBack -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
<scope>runtime</scope>
</dependency>
<!-- Hibernate -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>${hibernate.version}</version>
</dependency>
<!-- Test Artifacts -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring-framework.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- mariadb jdbc -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>1.5.3</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<version>1.4.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.3.RELEASE</version>
</dependency>
<!-- //10.7-2-0 added -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<!-- MYBATIS -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.1</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.0</version>
</dependency>
</dependencies>
</project>
<context:component-scan base-package="pack.controller"/>
<mvc:annotation-driven />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- Example: a logical view name of 'showMessage' is mapped to '/WEB-INF/jsp/showMessage.jsp' -->
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>
以及应该从中读取的java文件:
package pack.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.stereotype.Component;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import pack.model.SawonDto;
import pack.model.SawonInter;
@Component
@ComponentScan("pack.model")
public class ListController {
@Autowired
private SawonInter inter;
@RequestMapping(value="list", method= RequestMethod.GET)
public Model processSelect(Model model){
model.addAttribute("lists", inter.selectList());
return model;
}
}
以batisTest结尾的文件夹是我正在做的,另一个文件夹是我在课堂上被教时写的。我已经拿了一整天了,一点运气都没有
有人愿意解释一下吗?我试着到处搜索,但我就是不明白…因为你的ListController类还不是Spring MVC controller。你需要在你的控制器中添加Spring@controller注释 例如 另外,我会推荐优秀的SpringMVC网站供您参考。希望对您有所帮助
OMG我是个白痴:(看起来我一直把组件误读为控制器:它起作用了。哇……我整天都在努力解决这个问题,现在我觉得自己很傻。非常感谢。否则我可能整天都在这样做,直到有人指出这一点,才有进展。
import org.springframework.stereotype.Controller;
@Component
@ComponentScan("pack.model")
@Controller
public class ListController {