Java EE 5 引入基於註解的程式模型,Java EE 6 進一步擴展支援更多組件類型。Web 應用無需在 web.xml 定義 Servlet,只需以 @WebServlet 標記類別即可。
@WebServlet:定義 Servlet 名稱與 URL 模式@WebFilter:定義 Servlet 過濾器@WebInitParam:指定 Servlet/過濾器初始參數@WebListener:標記 Web 應用上下文監聽器@MultipartConfig:指定 Servlet 接收 multipart/* 請求無需在 faces-config.xml 註冊,直接以 @ManagedBean 與 @RequestScoped 標記:
@ManagedBean(name="userBean")
@RequestScoped
public class UserBean {
private String name;
// getter/setter 略
}
其他 JSF 2.0 註解:@ManagedProperty、@ResourceDependency、@ListenFor、@FacesConverter、@FacesValidator。
使用上述註解的類別需置於 WEB-INF/classes 或打包為 JAR 放入 WEB-INF/lib。web.xml 中的 <metadata-complete> 元素控制容器是否掃描註解與 Web 片段:false 或缺失時掃描,true 則完全由部署描述符配置。Servlet 3.0 使 web.xml 成為可選。