package test;
@Repository
public interface UserTest extends JpaRepository<User, Long> {
}
package com.app;
@SpringBootApplication
@ComponentScan({"test","com.app"})
public class Application extends SpringBootServletInitializer {
}
更新:
因为有些答案提供了解决方案,我问的是解释而不是解决方案。以下内容甚至不需要对“测试”进行组件扫描就可以工作:
SpringBootApplication
@EnableJpaRepositories({"test","com.app"})
public class Application extends SpringBootServletInitializer{
}
现在的问题是,当@repository不工作时,为什么我甚至需要在它上使用componentscan?为什么在文档中@repository是由componentscan扫描的,而@enablejparepostiories是enoguh?
为了让spring知道什么数据源与什么存储库相关,您应该在@enableJParepositories
注释中定义它。
尝试像下面这样启用jpa存储库。
@SpringBootApplication
@ComponentScan({"test","com.app"})
@EnableJpaRepositories("test")
public class Application extends SpringBootServletInitializer {
}
更新:为什么需要@enablejparepositories?
我有一些项目,如果您不编写自己的东西,只有@SpringBootApplication就足够了。
我希望你明白了。
金玉良言:
问题内容: 我有一个要在组件扫描时排除的类。我正在使用下面的代码来做到这一点,但这似乎没有用,尽管一切似乎都正确 实际上,我想在我的其余api逻辑中使用实现“ Service”接口的“ ServiceImpl”类,并在进行api的集成测试时希望排除这种实现并加载模拟的实现。但这似乎没有发生,即使使用上面的内容我也收到以下错误 我花了太多时间在此上,但没有任何效果。 任何帮助表示赞赏。 问题答案:
我有一个简单的类叫BeaconDao 然而,当我用@service或@component标记beaconDao时,一切都运行得非常好。有人能看出问题所在吗?
我有一个简单的Spring Boot应用程序,其中有一个jpa存储库对象,我希望它在类中自动生成,如下所示。 下面是类 我有以下例外。
我实现了spring Security3.2.5,但不幸的是@preauthorize不能用于类和方法。正如我从文档中读到的,@preauthorize应该允许方法和类工作,如果用户在注释中有指定的角色,但我能够运行所有方法或类,而没有任何角色差异。您可以看到security-config.xml和security.context.xml以及我在下面声明@preauthorize注释的类。如果你能
在WebSphere8.5.5.13上部署了Spring4+JPA应用程序,在数据库中保存了JPA。所以,在我添加了spring-batch之后,我面临着jpa实体无法保存的问题。 所以,在事务管理器配置中的原因就像这里,如果我添加了事务管理器-JPA也尝试使用它。 我的pom.xml是: 这是图书馆的问题?(我试着注释所有的spring-batch代码,在pom中只保留depedency,然后它