我正在学习Spring Boot,我正在尝试创建一个非常简单的应用程序,它使用动态查询从Mongo DB中获取数据。我使用Intellij作为我的IDE。
FILE: application.properties (在资源文件夹内)
@Repository
public interface MyRepo extends PagingAndSortingRepository<Person, String> {
public List<Person> findAllByName(String name);
}
文件: person.java
@Configuration
@EnableMongoRepositories(basePackages = {"mongo.customQueries"})
public class Config {
}
文件: MyRepo.java
public class Main {
@Autowired
public static MyRepo myRepo;
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(Config.class);
MyRepo myRepo = context.getBean(MyRepo.class);
System.out.println(myRepo.findAllByName("Avishek"));
}
}
文件: Config.java
Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [mongo.customQueries.MyRepo] is defined
文件: Main.java
$("element-root").bind("DOMSubtreeModified", "CustomHandler");
当我运行项目时,出现错误
{{1}}
我在这里失踪的是什么?为什么我的MyRepo bean没有被创建,因为net中的大多数示例都是这样做的。
答案 0 :(得分:0)
问题是您要在Main类中注释MyRepo
,请将其删除,如下所示:
public class Main {
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(Config.class);
MyRepo myRepo = context.getBean(MyRepo.class);
System.out.println(myRepo.findAllByName("Avishek"));
}
}
答案 1 :(得分:0)