如何在tomcat启动的时候,执行项目的初始化程序
在tomcat启动的时候,控制台输出了很多信息,信息中显示在tomcat启动的时候,加载了很多项目的配置文件,并且调用了项目初始化方法,但我不知道是怎么被调用的。在那里被调用的?是需要配置tomcat的一些什么东西吗?
PS:javaweb项目
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
web.xml中做如下配置
楼主需要的是系统了解一下 Servlet 的生命周期。当你实现一个 Servlet 的时候,它的哪些方法会在 Web 应用启动的时候调用。这方面的文章太多了:
http://www.jianshu.com/p/1d50...
http://www.runoob.com/servlet...
有三种办法:
如 @treeandgrass 所说,对某个Servlet重写
init()
,但前提是在web.xml中给load-on-startup设上值(或者加@WebServlet
注解);对某个Filter实现
init()
,配在web.xml中(或者加@WebFilter
注解);实现 ServletContextListener 接口,并实现
contextInitialized()
,配在web.xml中(或者加@WebListener
注解)。这三种方法中,我最常用最后一种(ServletContextListener)(在Web中使用Spring通常只用这种方法),因为它总是优先于Filter和Servlet执行的,而且不会跟实现具体功能的Servlet、Filter混在一起。
初始化的工作包括:
线程池、数据库连接池、网络连接池的初始化
IoC容器的加载
启动定时器
其他需要初始化的对象
以上大多数初始化工作是需要在Web服务器停止时关闭的,这些工作应写在
contextDestroyed()
中。