2012-03-05 51 views
1

假設我有一個包含所有標有自定義註釋的字段的類。在我的情況下,它是@inject,因爲這被用於依賴注入。每次在我的課程中使用註釋時,如何在單獨的課程中運行方法?換句話說,每次加載類時,註釋都會運行一個方法來收集字段數據,然後設置字段。每次在某個類中使用特定註釋時的運行方法

我已經建立了收集資源的整個系統,但我需要如何與@Inject註解類加載時,實際運行該代碼的一些方向。這是否可以通過在執行數據收集的註釋接口中定義某種方法來完成?

我最初的想法是使用自定義的類裝載器,但我不希望有,當我使用這個jar在其他項目設置的類加載器。有沒有辦法在運行時以編程方式爲特定類設置自定義類加載器?我已經做了很多預運行反射的東西,我已經知道哪些類需要用自定義加載器加載。它只是一個不知道的問題,或者是否可以在代碼中的類上設置自定義加載器。

能否類加載器甚至可用於執行任務,如預填充字段,或者我在這裏上一個錯誤的切線流失?我只需要在這種類型的事情最常見的方式上進行一點指示(在運行時預先填充類字段)。

回答

0

我正在反思這個問題。你不能在加載一個類之前自動運行代碼(除非它是一個servlet過濾器等)。在我的情況下,答案是創建一個基於特定類的實例,該實例已經擁有我需要的資源數據。與Google的Guice相似。

查看此問題以獲取更多見解:How does Guice Populate Annotated Fields

-1

您可以使用Google Guice或Spring Framework的注入器。

相關問題