gpt4 book ai didi

java - Spring:如何 Autowiring 或(使用新的)带有构造函数参数且不是托管bean的bean

转载 作者:行者123 更新时间:2023-11-29 03:08:37 25 4
gpt4 key购买 nike

这里有很多类似的问题,但没有一个说明如何去做。在这里,我如何 Autowiring CreateDatabaseAction bean 并使用它?它需要一个 Shoppingcart 对象,并且它不是 spring 管理的 bean。还是我必须使用新关键字创建它?

public abstract class AbstractServiceActions {
@Autowired
protected DatabaseModel dbModel;

protected User user;

public AbstractServiceActions(ShopingCart cart) {
this.user = user;
}

并实现它:

@Component
public class CreateDatabaseAction extends AbstractServiceActions {
public CreateDatabaseAction(ShoppingCArt cart){
super(cart);
}

}

最佳答案

如果没有该类型的托管 bean,则 Spring 无法知道在实例化 CreateDatabaseAction 时要使用哪个 ShoppingCart 实例。我认为你应该重新考虑设计。例如,将它作为方法参数发送到实际使用的地方,并将其从构造函数中删除。

仅考虑名称,我会说 ShoppingCart 是 session 作用域 bean 的一个很好的候选者。

关于java - Spring:如何 Autowiring 或(使用新的)带有构造函数参数且不是托管bean的bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30726510/

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