当Spring通过@Service或@Component批注创建Bean定义时,默认情况下,它将通过小写类名的首字母来为Bean创建一个ID。如果要覆盖该行为,则可以在注释中提供备用ID,例如。@Service(“
profileService”)。
关于您正在使用存储库的内容-默认情况下,Spring通过在存储库接口名称后附加“
Impl”来寻找存储库的自定义实现。如果找到它,则不会创建默认实现。所以,如果你有
UserRepositoryImpl extendsUserRepository,而不是
UserRepositoryImpl extendsDatatablesCriteriasRepository比Spring不会创建
userRepository豆。另外,如果将
@NoRepositoryBean注释添加到
UserRepository接口,则将禁止创建
userRepositoryBean。
但是,
UserRepositoryImpl确实应该执行
UserRepository。如果它确实是要扩展的
DatatablesCriteriasRepository,则应该命名
DatatablesCriteriasRepositoryImpl。有
UserRepsitoryImpl延长
DatatablesCriteriasRepository是设计有问题的迹象。



