Java 面对o.s.web.servlet.PageNotFound:我的spring引导项目中没有GET/问题的映射

Java 面对o.s.web.servlet.PageNotFound:我的spring引导项目中没有GET/问题的映射,java,spring,spring-boot,Java,Spring,Spring Boot,我试图在我的项目中使用SpringBoot实现REST微服务。我已经为登录页面创建了一个控制器,还创建了存储库。 但是,在点击URL时,我遇到了一个问题:o.s.web.servlet.PageNotFound:GET没有映射。 主类 @ComponentScan(basePackages = {"com.springboot.controller.repository"}) @EntityScan(basePackages="com.springboot.cont

我试图在我的项目中使用SpringBoot实现REST微服务。我已经为登录页面创建了一个控制器,还创建了存储库。 但是,在点击URL时,我遇到了一个问题:o.s.web.servlet.PageNotFound:GET没有映射。

主类

@ComponentScan(basePackages = {"com.springboot.controller.repository"})
@EntityScan(basePackages="com.springboot.controller.model")
@EnableJpaRepositories(basePackages="com.springboot.controller.repository")

@SpringBootApplication

public class CunsultustodayWebServicesApplication {

    public static void main(String[] args) {
        SpringApplication.run(CunsultustodayWebServicesApplication.class, args);
    }

}
控制器

@RestController

@ComponentScan

@Controller

public class LoginController {

    @Autowired(required=true)
    private UserRepo userrepo;
    
    @RequestMapping("/")
    public String checkMVC()
    {
        return "Login";
    }
    
    @RequestMapping("/login")
    public String loginHome(@RequestParam("email") String email, @RequestParam("password") String password, Model model)
    {
        User u = null;
        try {
            u= userrepo.findByEmail(email);
        }
        catch(Exception ex) {
            System.out.println("User Not Found!!!");
        }
        if(u!=null) {
          model.addAttribute("email", email);
          return "HomePage";
        }
        return "Login";
    }
}
存储库

@Service("UserRepo")

public interface UserRepo extends JpaRepository<User,Integer> {

    User findByEmail(String email);

}
@服务(“UserRepo”)
公共接口UserRepo扩展了JpaRepository{
用户findByEmail(字符串电子邮件);
}
pom.xml

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.3</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.springboot.controller</groupId>
    <artifactId>cunsultustoday-web-services</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>cunsultustoday-web-services</name>
    <description>Demo project for Spring Boot</description>
    <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-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
           <groupId>org.apache.tomcat.embed</groupId>
           <artifactId>tomcat-embed-jasper</artifactId>
           <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
            <version>1.9</version>
        </dependency>
        <dependency>
           <groupId>javax.servlet</groupId>
           <artifactId>jstl</artifactId>
           <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-redis</artifactId>
                <exclusions>
                    <exclusion>
                        <groupId>io.lettuce</groupId>
                        <artifactId>lettuce-core</artifactId>
                    </exclusion>
                </exclusions>    
            </dependency>
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
            </dependency>
            <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>spring-webmvc</artifactId>
              </dependency>
    </dependencies>

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

</project>

org.springframework.boot
spring启动程序父级
2.4.3
com.springboot.controller
cunsultustoday web服务
0.0.1-快照
cunsultustoday web服务
SpringBoot的演示项目
UTF-8
UTF-8
1.8
org.springframework.boot
spring引导启动器数据jpa
org.springframework.boot
SpringBootStarterWeb
org.apache.tomcat.embed
汤姆卡特·贾斯珀
假如
共用配置
共用配置
1.9
javax.servlet
jstl
假如
mysql
mysql连接器java
运行时
org.springframework.boot
弹簧起动试验
测试
org.springframework.boot
spring启动程序数据redis
生菜
莴苣核
redis.clients
绝地武士
org.springframework
SpringWebMVC
org.springframework.boot
springbootmaven插件

请帮我找到解决办法。谢谢

您的控制器可能没有被ComponentScan拾取,因为您仅限于用于扫描的软件包

试试这个:

// note @ComponentScan is removed as it is included already in @SpringBootApplication
@EnableJpaRepositories
@SpringBootApplication
public class CunsultustodayWebServicesApplication {
...
这是:

// note @Controller and @CompnentScan are removed
@RestController
public class LoginController {

您有一些软件包吗?您已经在Spring boot Apply annotated类上只使用存储库软件包进行了组件扫描,如果您有其他带有controller或其他的软件包,它们将不会被扫描,并且您可能因此而面临问题。谢谢您的建议。好的,我将进行此更改。谢谢你的建议,对我很有效。