java - Spring 服务器 Bean 创建问题

标签 java spring

我遇到一个问题,即定义的存储库在服务器启动时没有被正确解释为 bean。带有@SpringBootApplication的类位于比定义的存储库更高的目录中,因此我找不到它不配置的原因。

@SpringBootApplication:

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
import java.util.Properties;

@SpringBootApplication
public class DemoApplication {

public static void main(String[] args) {
    SpringApplication.run(DemoApplication.class, args);
    System.out.println("http://localhost:8080");
}
}

存储库

package lab14.panoslab.Repositories;

import lab14.panoslab.Models.Account;
import org.apache.catalina.User;
import org.hibernate.annotations.NotFound;
import org.hibernate.annotations.NotFoundAction;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface UserRepository extends JpaRepository<Account,Long> {
    @NotFound(action = NotFoundAction.IGNORE)
List<User> findByUsername(String username);
}

错误代码:

*************************** APPLICATION FAILED TO START***************************

Description:

Field userRepository in lab14.panoslab.Controllers.RegisterController required a bean of type 'lab14.panoslab.Repositories.UserRepository' that could not be found.

Action:

Consider defining a bean of type 'lab14.panoslab.Repositories.UserRepository' in your configuration.

Process finished with exit code 1

最佳答案

你确定你的类(class)Account实现接口(interface) User

并尝试删除注释 @Repository并添加注释@EntityScan@EnableJpaRepositories在你的DemoApplication类:

@SpringBootApplication
@EntityScan({"lab14.panoslab.Models"})    
@EnableJpaRepositories({"lab14.panoslab.Repositories"})
public class DemoApplication {...}

此外,我建议您将所有包重命名为小写并返回值 List<Account> ,不是List<User> .

关于java - Spring 服务器 Bean 创建问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52377020/

相关文章:

java - 使用Spring Boot根据输入请求中的字段创建类链的不同实例

java - 为什么Spring MVC会以404响应并报告“在DispatcherServlet中未找到带有URI […]的HTTP请求的映射”?

java - EhCache - 不使用 spring 数据进行缓存

java - 导入时出现 Google Drive 错误

java - 如何使具有一定RGB范围的像素点透明

java - 在persistence.xml和spring配置文件中配置数据源的区别

c# - 无法从字符串值加载类型

java - Spring Data Rest 使用一个 CRUD 存储库管理所有实体

java - 了解多态性

Java:JPanel 在 CardLayout 中无法正确显示