我已经在使用CDI@Inject
在我的一些课程中获得一些无状态的服务。域对象被注入吗?
我不知道是否也将是有意义的注入域对象,如下面的例子:
class UserSettings;
class User {
//@Inject
private UserSetttings settings = new UserSettings();
}
用户应该始终有附加了一些默认设置,以后可以改变。你会在这里使用CDI,还是坚持手动创建一个新对象?
或者更一般的说法:在哪里使用CDI来说一般意义上的?哪里不?
更新监制:
class Preferences {
@Produces @DefaultSettings
public UserSettings getDefaultSettings() {
UserSettings settings = new UserSettings();
//configure default
return settings;
}
}
class User {
@Inject @DefaultSettings
private UserSettings settings;
}
所以,因为我是生产者新手:我更新了我的第一篇文章 - 这是你会在这种情况下建议吗?或者,如果不是,你能举一个例子吗? – membersound
是的,这是一种方法。 '@ DefaultSettings'没有登录?如果用户有自定义设置,会不会有另一种情况? –