1
這在我看來,以下應該產生與兩個字段指向同一個實例,CDI - bean實例可重用性
class BeanToInject {
// something
}
class TargetBean {
@Inject
private BeanToInject first;
@Inject
private BeanToInject second;
}
但似乎是不正確的,因爲sysouting第一和第二,我得到
first: [email protected]
second: [email protected]
是不是讓豆子引用應該會在不同的上下文中重用? 我在這裏錯過了什麼?
我已經調查了這一點,並規範說(上)辛格爾頓具有與客戶端序列化的一些問題。他們建議使用(at)ApplicationScoped,而不是像單例那樣行事。 – grafthez 2012-07-18 20:46:25
是的,那是在作用域像「應用」網絡環境一樣,「會話」,「會話」,「請求」,「查看」等存在。你的問題並沒有說明你是否在web env,ejb或者標準應用程序上工作,所以我只是想出了最簡單的答案。無論如何,這兩個答案都很好,你可以自由選擇你認爲更好地回答問題的答案。 :) – 2012-07-19 09:58:23