【发布时间】:2019-10-28 14:25:40
【问题描述】:
我想通过 Guice 向新的 Cayenne 数据对象提供构造函数参数,但看起来 cayenne 只是使用 Class.newInstance() 来实例化新实例。有什么方法可以让 Cayenne 使用提供程序来获取新实例?例如,在获取期间实例化新实例时,我需要它来执行此操作,而不仅仅是在我创建新实例时。
稍微扩展一下,我有一个 Maven 项目,其中包含所有 Cayenne 模型和核心业务逻辑。然后我有另一个带有 API 实现的 Maven 项目。我希望能够在 API 项目中配置参数并让模型在运行时使用这些参数。
因此,可以使用构造函数注入或提供方法来实现 - 任何一种都可以。
有什么办法吗?
public class Foo extends _Foo { //_Foo extends CayenneDataObject
private final String hey;
public Job(@Inject @Named("foo-job") String hey) {
super();
this.hey = hey;
}
}
【问题讨论】:
标签: dependency-injection apache-cayenne