Java:在需要时执行方法。war文件已部署 1 年,4 月 Questions & Answers 1429 我想尽快执行一些方法。war文件是由Tomcat或JBoss部署的,我该怎么做 我试过了,但没用。 谢谢
# 1 楼答案 好的,我解决了这个问题,这个问题适用于JBoss: import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; import javax.ejb.Startup; import javax.ejb.Singleton; @Singleton @Startup public class InitializerEjb { @PostConstruct public void init() { SMTPServer smtp_server = SMTPServer.getInstance(); smtp_server.start(); } } 这对Tomcat有效: import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import javax.servlet.annotation.WebListener; @WebListener public class Initializer implements ServletContextListener { @Override public final void contextInitialized(final ServletContextEvent sce) { SMTPServer smtp_server = SMTPServer.getInstance(); smtp_server.start(); } }
# 2 楼答案 您是否尝试过在Servlet中添加方法,然后在启动时运行它 在你的网站上。xml: <servlet> <servlet-name>YourServlet</servlet-name> <servlet-class>com.your.domain.YourServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet>
# 1 楼答案
好的,我解决了这个问题,这个问题适用于JBoss:
这对Tomcat有效:
# 2 楼答案
您是否尝试过在Servlet中添加方法,然后在启动时运行它
在你的网站上。xml: