小编Rid*_*nga的帖子

@Autowired 不能在类实例使用反射创建的类内部工作

我正在创建 Spring Boot 应用程序。在此应用程序中,有一组逻辑类,并且此逻辑类实例使用反射创建(基于某些条件逻辑发生变化,这就是我使用反射的原因)在侧面逻辑类中,我尝试自动连接我的存储库类,但它不起作用。该逻辑类使用 @Component 进行注释,但它不起作用。

有什么办法可以做到这一点吗?spring 使用反射来自动装配类,因此我自己使用反射后不知道是否可以使用@Autowired。

代码 :

interface ILogic{
    void saveUser();
    // set of methods
}

@Repository
interface ARepository extends JpaRepository<ARepository,Integer>{}

@Component
class ALogic implement ILogic{
    private final ARepository aRepository;
    private final BRepository bRepository;
    @Autowired
    public Alogic(ARepository aRepository, BRepository bRepository){
    // code stuff 
    }
    // implementation of methods in ILogic interface
} 

@Component
class BLogic implement ILogic{
    private final ARepository aRepository;
    private final BRepository bRepository;
    @Autowired
    public Alogic(ARepository aRepository, BRepository bRepository){
        // code stuff 
    }
    // implementation …
Run Code Online (Sandbox Code Playgroud)

java reflection spring spring-boot

3
推荐指数
1
解决办法
2424
查看次数

标签 统计

java ×1

reflection ×1

spring ×1

spring-boot ×1