我想创建一个基本的通用存储库接口,然后通过一个类实现此接口,我希望其他实现了基本接口的接口与实现的类一起工作
这是基本界面:
@NoRepositoryBean
public interface Base<T>{
T getFoo();
}
这是该类实现的基础存储库:
public class BaseImple<T> implements Base<T>{
public T getFoo(){
//do some stuff
return t;
}
}
这是第一个存储库:
@Repository
public interface A extends Base<FOO>{
}
这是第二个存储库:
@Repository
public interface B extends Base<BAR>{
}
但是当我自动连接B接口时,会出现错误:
no qualifying bean of type B
答案 0 :(得分:0)
public interface Base<T>{
T getFoo();
}
@Repository
public class BaseImple<T> implements Base<T>{
public T getFoo(){
//do some stuff
return t;
}
}
public interface A extends Base<FOO>{
}
public interface B extends Base<BAR>{
}
答案 1 :(得分:0)
基本上,您只创建无法实例化的接口。 Spring在该存储库中找不到任何对象/ Bean,因此请尝试使用一个实现类来扩展您的存储库(如@hmaz所示)或在Spring接口中扩展CrudRepository或JpaRepository以便提供实施。