gpt4 book ai didi

java - Spring 依赖注入(inject)到匿名实现中

转载 作者:行者123 更新时间:2023-12-02 18:18:20 25 4
gpt4 key购买 nike

我有一个用于服务的抽象基类,其中包括各种方法的实现和一个抽象方法。我有一些密切相关的实体,我想在单个服务中管理它们,因此我计划让该服务由这些实体的抽象基础服务的匿名实现组成。我想将 Dao 实现注入(inject)到匿名服务实现中。我尝试做这样的事情。

@Configurable
@Service( value="compositeService" )
public class CompositeServiceImpl
extends BaseDataServiceAbstract<AnotherEntity, Long>
implements CompositeService
{
BaseDataServiceAbstract<MyObject, Long> myObjectService =
new BaseDataServiceAbstract<MyObject, Long>() {

@Resource( name="myObjectDao")
BaseDao<MyObject, Long> myObjectDao;

@Override
public BaseDao<MyObject, Long> getDao()
{
return myObjectDao;
}
};

// other implementation methods and stuff
}

如果我这样做,Dao 就不会被注入(inject)。如果我将 dao 移出到包含类中,那么它就可以正常工作。我可以将其保留在包含类中,但想知道如何将其注入(inject)到匿名类实现中。

最佳答案

只要您自己调用 new,Spring 就不会实例化该类,因此无法注入(inject)依赖项。

由于您无法在不使用 new 自己调用默认构造函数的情况下创建匿名类,因此 Spring 无法在此为您提供帮助。

关于java - Spring 依赖注入(inject)到匿名实现中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4702797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com