2017-04-05 62 views

回答

1

您可以使用

static { 
    Class.forName("org.what.Ever") 
} 

加載類,並確保它的可用和初始化。您不需要關心它是否已經加載,因爲在這種情況下,類從類加載器緩存中出來。爲了確保它不會經常發生,它通常會被放入另一個類的靜態初始化器中。

+0

我需要通過容器獲取實例化類的名稱。我使用下面的一段代碼而不是上面的代碼來代替'getServlet()': - '(XXX)Class.forName(「packageName.XXX」)。cast(XXX.class)' – Test

+0

@Test If這並沒有幫助你,更詳細地描述你的問題可能是有意義的。如果它有幫助,你可以考慮接受答案。 –

+0

我的問題是我想要替換Struts1中存在的getServlet()代碼。我們正在將應用程序遷移到Struts2,在這裏我想要更換。我正在考慮用我提供的代碼替換它。它的工作原理,但我的觀點是它是getServlet()的解決方案? – Test