为了账号安全,请及时绑定邮箱和手机立即绑定

如何在tomcat启动的时候,执行项目的初始化程序

如何在tomcat启动的时候,执行项目的初始化程序

泛舟湖上清波郎朗 2019-03-01 10:51:26
在tomcat启动的时候,控制台输出了很多信息,信息中显示在tomcat启动的时候,加载了很多项目的配置文件,并且调用了项目初始化方法,但我不知道是怎么被调用的。在那里被调用的?是需要配置tomcat的一些什么东西吗? PS:javaweb项目
查看完整描述

3 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

web.xml中做如下配置

<servlet>  
   <servlet-name>MyServlet</servlet-name>  
   <servlet-class>org.cai.MyServlet</servlet-class>  
   <strong><load-on-startup>0</load-on-startup></strong>  
  </servlet> 
查看完整回答
反对 回复 2019-03-01
?
温温酱

TA贡献1752条经验 获得超4个赞

有三种办法:

  1. @treeandgrass 所说,对某个Servlet重写init(),但前提是在web.xml中给load-on-startup设上值(或者加@WebServlet注解);

  2. 对某个Filter实现init(),配在web.xml中(或者加@WebFilter注解);

  3. 实现 ServletContextListener 接口,并实现contextInitialized(),配在web.xml中(或者加@WebListener注解)。

这三种方法中,我最常用最后一种(ServletContextListener)(在Web中使用Spring通常只用这种方法),因为它总是优先于Filter和Servlet执行的,而且不会跟实现具体功能的Servlet、Filter混在一起。

初始化的工作包括:

  • 线程池、数据库连接池、网络连接池的初始化

  • IoC容器的加载

  • 启动定时器

  • 其他需要初始化的对象
    以上大多数初始化工作是需要在Web服务器停止时关闭的,这些工作应写在contextDestroyed()中。

查看完整回答
反对 回复 2019-03-01
  • 3 回答
  • 0 关注
  • 540 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信