弹簧、抽象类和注释

2022-09-01 17:34:14

我有一个非常简单的抽象类

public abstract class AbstractServiceActions {

    @Autowired
    protected DatabaseModel dbModel;

    protected User user;
    protected boolean complete;
    protected String serviceResult;

    public AbstractServiceActions(User user) {
        this.user = user;
        this.serviceResult = "";
    }

    public abstract String doAction();
    }

现在你可以看到,我正在尝试自动连接数据库模型。但是在我的扩展类中,我只收到 dbModel 的 null。

@Component
public class CreateDatabaseAction extends AbstractServiceActions {
....
}

问:我在这里尝试了一些不可能的事情吗?


答案 1

您的设置似乎很好。原因也许在别处。也许你正在用 实例化类,而不是让 spring 这样做。new CreateDatabaseAction()


答案 2

使用而不是来自 。@Autowired@Injectjavax.inject

抽象类中的依赖注入仅适用于 spring 的 .@Autowired

仅供参考,我正在使用Spring 4.0;爪哇 6


推荐