2012-08-29 86 views

回答

5

您可以使用@ApplicationScoped@ManagedBean這是熱切地初始化和註釋分別爲@PostConstruct@PreDestroy所需的啓動/關閉掛鉤方法。

所以:

@ManagedBean(eager=true) 
@ApplicationScoped 
public class App { 

    @PostConstruct 
    public void init() { 
     // ... 
    } 

    @PreDestroy 
    public void destroy() { 
     // ... 
    } 

} 

請注意,這樣做意味着你不能在JSF Web應用程序使用ServletContextListener。 JSF建立在Servlet API之上,這意味着你可以繼續使用它。隨着新的Servlet 3.0 @WebListener註解,它也可以無需將其配置爲web.xml

@WebListener 
public class Config implements ServletContextListener { 

    @Override 
    public void contextInitialized(ServletContextEvent event) { 
     // ... 
    } 

    @Override 
    public void contextDestroyed(ServletContextEvent event) { 
     // ... 
    } 

} 
相關問題