如何在eclipse中找到动态Web项目的主要方法?

时间:2014-07-14 07:52:16

标签: java eclipse

我在eclipse中创建了一个动态Web项目。现在我有一种情况,我需要在应用程序启动时启动一个线程[在main方法中缺少]。 现在我在整个项目中搜索包含main方法的类。但我没有得到它。

与web.xml一样

<welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
</welcome-file-list> 

现在我想在index.jsp加载之前执行一些代码。 提前谢谢......

4 个答案:

答案 0 :(得分:5)

通常,Web应用程序从应用程序容器启动,因此不需要主方法。

您可能需要添加context listner,以便通知您有关Web应用程序的启动以及启动线程的位置。

Here you can find an example.

答案 1 :(得分:3)

你可以在启动时设置一个servlet加载,意味着它将在服务器启动时运行,如Apache tomcat ..

但请确保您要执行的任务应该在线程中,直到您在启动servlet上加载时编写的任务执行无法完成Web服务器将无法启动并运行,因此,如果您的任务将花费时间比网络服务器会说它无法在xyz秒内启动而且Web服务器也无法启动。

要在启动时加载服务器,您需要在web.xml中配置它

 <servlet>
     <servlet-name>initServelet</servlet-name>
     <servlet-class>com.initServelet</servlet-class>
     <load-on-startup>1</load-on-startup>
 </servlet>

并且在你的servlet中你需要实现init方法,这个方法将在启动服务器时被调用。

 public class initServelet extends HttpServlet {
   public void init(ServletConfig config) throws ServletException {
     // your code goes here
   }
 }

答案 2 :(得分:2)

Web应用程序没有主要方法。

相反,您应该在其中一个Lifecycle事件中初始化您的应用程序。看一下这个example

答案 3 :(得分:0)

您可以使用过滤器拦截对index.jsp的调用并执行任何初始化操作。

请参阅http://www.tutorialspoint.com/servlets/servlets-writing-filters.htm