2014-06-30 53 views
0

在Java EE中,@Singleton Annotation通過同步對Singleton的訪問來訪問單線程安全。Java EE:攔截器和單例,如何在單例控制檢查之前攔截

現在,我想使用一個類的Interceptor來測量對Singleton的調用需要多長時間。

我的問題是,攔截器在線程被允許使用單例後被調用。通過這種方式,我只能得到一個Method運行多長時間,而不是調用者等待訪問單例的時間。

我基本上要做到:

Caller 
---Interceptor 
------Singleton 

但只有使用@辛格爾頓和@Interceptor我得到:

Caller 
---Singleton 
------Interceptor 

有沒有辦法做到這一點?

+0

確實沒有與jee攔截器。 – MarianP

+0

,但可以找到解決方案。在wildfly(jboss AS)中有一個很好的 – MarianP

+0

有容器攔截器,這些可能工作。 「爲EJB配置的容器攔截器保證在WildFly提供的安全攔截器,事務管理攔截器和其他這樣的攔截器之前運行,從而允許用戶應用程序特定的容器攔截器在調用進行之前設置任何相關的上下文數據。」 https://docs.jboss.org/author/display/WFLY8/Container+interceptors – MarianP

回答