2011-11-16 32 views

回答

4

您可以使用​​接口實現您的類,這使您的類能夠在啓動和關閉時從應用程序服務器(即JBoss)接收通知。

例如:

public class MyServletContextListener implements ServletContextListener { 

      /**This method will run when the web application starts***/ 
      public void contextInitialized(ServletContextEvent sce) { 
      /**Put your codes inside , it will run when JBoss starts ***/ 
      } 

} 

然後註冊您在MyServletContextListenerweb.xml

<?xml version="1.0"?> 
<web-app version="2.5" 
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/web-app_2_5.xsd"> 
    <listener> 
      <listener-class>com.abc.xyz.MyServletContextListener </listener-class> 
    </listener> 

</web-app> 

包在WAR格式的應用程序並將其部署到JBoss的。當JBoss啓動時,MyServletContextListener中的contextInitialized()也會運行。

+0

謝謝@Ken Chan, – sateesh

+0

感謝Ken Chen, 有沒有其他的方式沒有創建戰爭文件, 因爲我的不是一個Web應用程序。 我的想法是創建一個類的單個實例,我可以在整個應用程序中使用。 (singleton。) – sateesh

+0

我不確定,可能你會看看'JMX'和'MBeans'。我不知道它們對你的情況是否有幫助。請參閱http://shrubbery.mynetgear.net/c/display/W/Custom+JMX+MBeans+in+JBoss和http://www.javalobby.org/java/forums/t49130.html祝你好運 –