Tomcat Listener使用
能拿Tomcat怎么办?
Tomcat是非常有名的开源容器,因其开源我们可以对其做定制化的改变,而且Tomcat在其配置文件方面做了很多注释说明摘要,帮助我们更好的定制化我们所需的功能点。
New Tomcat Listener
首先看下Tomcat整个比较有名的Listener,在我们的conf/server.xml文件中一目了然
类图
NEXT 自定义的Listener,本代码是案例的方式,实际上在我们项目中定制化扩展了,譬如应用stop后,通知集群下的另外机器;监听接受UDP发过来的信息...
import java.io.FileWriter; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException; import java.net.UnknownHostException; import org.apache.catalina.Container; import org.apache.catalina.Executor; import org.apache.catalina.Lifecycle; import org.apache.catalina.LifecycleEvent; import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleListener; import org.apache.catalina.LifecycleState; import org.apache.catalina.Server; import org.apache.catalina.Service; import org.apache.catalina.connector.Connector; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; public class EwellListener implements LifecycleListener { public void lifecycleEvent(LifecycleEvent event) { System.out.println("-------------------------------------------------"); if (event != null && event.getLifecycle() != null) { System.out .println(event.getLifecycle().getStateName() + "chenyang"); } System.out.println("-------------------------------------------------"); if (!(event.getLifecycle() instanceof Server)) return; if (!Lifecycle.AFTER_START_EVENT.equals(event.getType())) return; Server server = (Server) event.getLifecycle(); } }
对于容器在不同事件下触发的行为,在tomcat中LifeCycle都有说明
下一步就是如何在Tomcat中能够进行识别以及启动呢?
1.把你生成的jar包放入,tomcat的lib的目录下${CATALINA_HOME}/lib
or ${CATALINA_BASE}/lib
2.把你的监听器配置到server.xml文件中
结论
Tomcat的监听能够帮助我们webapp在启动的生命周期内完成你棘手的若干在应用系统中才能完成的功能,那么下一章Tomcat的Vavle能够帮助我们在信息流中一层层剥离,还原事实的真相,期待吧!
相关推荐
Kafka 2020-09-18
Wepe0 2020-10-30
杜倩 2020-10-29
windle 2020-10-29
minerd 2020-10-28
mengzuchao 2020-10-22
Junzizhiai 2020-10-10
bxqybxqy 2020-09-30
风之沙城 2020-09-24
kingszelda 2020-09-22
大唐帝国前营 2020-08-18
yixu0 2020-08-17
TangCuYu 2020-08-15
xiaoboliu00 2020-08-15
songshijiazuaa 2020-08-15
xclxcl 2020-08-03
zmzmmf 2020-08-03
newfarhui 2020-08-03
likesyour 2020-08-01