Java EE 5 支援使用註釋,以指定部署資訊。
當應用程式包含大量 Java 類別時,註釋的部署處理時間將增加。
如果要最小化效能影響,您可以使用下列其中一種方法:
- 判定模組是否需要使用 Java EE 5。如果模組不需要使用 Java EE 5,則不會掃描 Java 類別內的註釋。
- 使用
metadata-complete
模組描述子中的屬性 (如果模組使用 Java EE 5 且不包含任何註釋)。
此屬性會停用模組的註釋處理,但 Java EE 5 模組仍可能放置在描述子檔案中。
如果要移轉應用程式,但不新增註釋,請考量使用此屬性值。
- 如果公用程式 Java 保存檔 (JAR) 不具有註釋資訊,請重組應用程式,以將這些 JAR 檔放置在共用檔案庫中。
如果無法設定 metadata-complete 屬性,請考量使用此方法。
- 將 WEB-INF\lib 目錄中的 JAR 檔移至企業保存檔 (EAR) 的根目錄。
由於多層壓縮,很難搜尋巢套的保存檔,例如,位於企業應用程式保存檔 (EAR) 中之 Web 保存檔 (WAR) 內的 JAR 檔。
metadata-complete 旗標可以在 ejb-jar.xml 或 web.xml 部署描述子檔中進行定義。
例如,EJB 模組部署描述子會將 metadata-complete 屬性定義為:
<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation= "http://java.sun.com/xml/ns/javaee"
http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
version= "3.0" metadata-complete = "true">
</ejb-jar>
Web 模組部署描述子會將 metadata-complete 屬性定義為:
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns= "http://java.sun.com/xml/ns/javaee"
xmlns:web = "http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation= "http://java.sun.com/xml/ns/javaee"
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID "version="2.5" metadata-complete = "true">
</web-app>
如需相關資訊,請參閱模組設定的 meta 資料。