java - Spring Boot 中未找到映射

标签 java spring-boot

当我尝试到达端点 http://localhost:9094/kan/echo 时,我创建了一个简单的 Spring Boot 应用程序我收到以下异常,请帮我解决 o.s.web.servlet.PageNotFound :没有 GET 映射 我已经附加了 Controller 类和 pom.xml 文件,任何人都可以帮助我

@CrossOrigin(origins = "http://localhost:4200")
@RestController
@RequestMapping("/kan")
public class TestController {

     @GetMapping(value = "/echo", produces = {"application/json"})
    public List<Employee> fetch(){
        List<Employee> tempEmployees = new ArrayList<>();
        Employee emp1= new Employee();
        emp1.setName("emp1");
        emp1.setDesignation("manager");
        emp1.setEmpId("1");
        emp1.setSalary(3000);
        tempEmployees.add(emp1);
        return tempEmployees;
    }

    }

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>com.package</groupId>
    <artifactId>javainuse</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>SpringBootHelloWorld</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            </dependency>
            <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

属性文件

服务器端口=9094

项目结构 /image/JXCzm.png

最佳答案

根据您的项目结构,我认为您由于主类的位置错误而面临错误。你的项目结构应该是这样的

src/main/java
    |-com.kanda
          |-javainuse(package)
               |-TestController.java
          |-model(package)
               |-Employee.java
          SpringBootHelloWorldApplication.java

在您的项目中,首先创建一个包com.kanda,其中放置javainusemodel和您的主类SpringBootHelloWorldApplication.java 。并在内部包中放置您的 Controller 和模型类。在springboot中,需要将主类放在main中 包。

更新了项目结构/image/ORAgl.png

关于java - Spring Boot 中未找到映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58425638/

相关文章:

spring - @ExceptionHandler 如何从 HttpServletRequest 获取原始 json post

java - spring.session.timeout 与 server.servlet.session.timeout

java - GWT + 流程构建器

java - Java 并发实用程序的用例

java - 创建性设计模式在依赖注入(inject)环境(如 SpringBoot)中无用吗?

java - 在maven中创建模块

java - 禁用 SOAP 服务日志跟踪中的打印凭据

javascript - Java 和 JavaScript 之间使用 OAEP 进行 RSA 加密

java - 如何让 FileOutputStream.close() 自己抛出异常?

java - 如何使用 Apache POI 加载大型 xlsx 文件?