在Spring中,动态创建特定类的不同对象的最佳方法是什么,每个对象都可以访问Springbean?
假设我有一个文件,每行描述一个不同的命令(但类型相同),我希望读取、检查并运行该命令,还可能执行其他操作,例如合并、比较,最重要的是,将命令存储到数据库中 为此,我创建了在Spring中,动态创建特定类的不同对象的最佳方法是什么,每个对象都可以访问Springbean?,spring,javabeans,Spring,Javabeans,假设我有一个文件,每行描述一个不同的命令(但类型相同),我希望读取、检查并运行该命令,还可能执行其他操作,例如合并、比较,最重要的是,将命令存储到数据库中 为此,我创建了Command类,并在读取文件的每一行时创建了new一个新的Command对象。现在的问题是,命令对象需要使用,比如提供数据库访问的Springbean。因此,我必须将该bean作为命令类的构造函数参数传入,这非常难看,似乎不是“Spring方式”。。。 我不想使用ApplicationContextAware使我的类与Spri
Command
类,并在读取文件的每一行时创建了new
一个新的Command对象。现在的问题是,命令对象需要使用,比如提供数据库访问的Springbean。因此,我必须将该bean作为命令类的构造函数参数传入,这非常难看,似乎不是“Spring方式”。。。
我不想使用ApplicationContextAware
使我的类与Spring上下文耦合
对于这种情况是否有最佳实践
我对Spring非常陌生,我知道这可能是一个愚蠢的问题…在这种情况下,我认为这是创建由
新建的Springbeans创建的类的最佳方法
因此,使用@Configurable
对它们进行注释,启用AspectJ,并阅读Spring参考资料。在这种情况下,我认为这是创建由创建的类的最佳方法
因此,请使用@Configurable
注释它们,启用AspectJ并阅读Spring参考我将创建一个与Spring耦合的命令工厂
,并在您的消费者中使用它。如果工厂实现了一个接口,您没有将自己耦合到消费者中,并且您没有在以后的时间点(例如测试)关闭使用不同的非弹簧耦合接口的可能性。我将创建一个与弹簧耦合的命令工厂
,并在消费者中使用它。如果工厂实现了一个接口,那么您没有将自己耦合到使用者中,也没有在以后使用不同的-非弹簧耦合-接口的可能性(例如测试)。我不同意将bean作为构造函数参数传递是丑陋的。老实说,我更喜欢这样的方面或其他重型机械为这么简单的目的。我现在同意你,更喜欢建造方式。我还检查了Spring的查找方法注入,这在Spring参考中有一个非常类似的示例提到。但我仍然不认为这是一个好的解决方案。我不同意将bean作为构造函数参数传递是丑陋的。老实说,我更喜欢这样的方面或其他重型机械为这么简单的目的。我现在同意你,更喜欢建造方式。我还检查了Spring的查找方法注入,这在Spring参考中有一个非常类似的示例提到。但我仍然不认为这是一个好的解决方案。我不想使用AspectJ。对于这样一个简单的情况来说,这太过分了。我不想使用AspectJ。对于这样一个简单的情况来说,这太过分了。