设为首页收藏本站
机战Z2破界篇 星组汉化 下载

星组游戏论坛

 找回密码
 注册(QQ注册+邀请注册)

QQ登录

只需一步,快速开始

查看: 2322|回复: 1

[心得] 如何使Web服务器启动时加载一个ServerSocket服务 [复制链接]

Rank: 11Rank: 11Rank: 11Rank: 11

UID
98178
星币
61
积分
24
阅读权限
90
注册时间
2013-4-11
最后登录
2015-10-29
发表于 2013-6-13 16:32:16 |显示全部楼层
本帖最后由 执着的蜗牛 于 2013-6-13 16:41 编辑
; m0 q5 d7 W9 c/ G) ?8 N9 q2 x9 R" X( n! P+ ?3 r

如果想在让一个ServerSocket服务伴随WEB服务器的启动而启动,需要做以下配置:

1.配置web.xml

在工程下的web.xml<web-app></web-app> 节点内添加如下代码

<listener>

        <listener-class>com.mybank.xfire.example.ServerSocketListener</listener-class>

</listener>


3 X; J% a, \) q4 N2 A

<listener-class></listener-class>

其中listener-class节点内填写需要调用的类的全路径,该处的具体作用在java的反射机制一贴中已经说明,结合java反射机制更易理解此处。


% j9 n. M1 d9 q; y1 {

<listener></listener>

监听器也叫Linstener 是用来监听web工程状态改变的一种实现机制,用来监听整个web工程状态改变 是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作


$ Q! E2 r* H6 p5 A' m

% g4 o: z; o6 E% D1 {

2.添加一个Servlet监听器

在工程项目下添加一个类,该类需继承ServletContextListener

该类会自动两个方法:

void contextInitialized(ServletContextEvent v)

//在该方法中添加加载ServerSocket服务的代码

//注意在此方法中切勿直接添加耗时操作,应用线程来处理。

' r8 w4 i0 s+ D/ h' Z! \

void contextDestroyed(ServletContextEvent v)

//该方法在工程结束时服务器自动调用

//可以在该方法内添加一些收尾操作,如关闭ServerSocket服务

5 O6 ]5 d) j. s1 m0 _5 I0 ?! \


" w4 t2 V' o/ x5 v

Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前、发生后可以做一些必要的处理,目前Servlet2.4JSP2.0总共有8个监听器接口和6Event

ServletContextListener ServletContext 的监听者,如果 ServletContext 发生变化,如服务器启动时 ServletContext 被创建,服务器关闭时 ServletContext 将要被销毁。


" j6 K  j4 Q5 Z5 \. Q1 `9 N! S* e

         ServletContextListener接口的方法:

                void contextInitialized(ServletContextEvent sce)

                通知正在接受的对象,应用程序已经被加载及初始化。

6 w2 j2 F/ C8 z1 k0 |* _8 |% |

               void contextDestroyed(ServletContextEvent sce)

                通知正在接受的对象,应用程序已经被载出。

) r" }' k6 S8 v; C: v9 M( H9 s

3 G8 K" _7 B  @; d更详细的Servlet监听器介绍:http://hht83.blog.163.com/blog/static/44037112008324232278/
+ e/ D# r/ a# c" p
头像被屏蔽

禁止发言

UID
110386
星币
11
积分
5
阅读权限
0
注册时间
2015-10-10
最后登录
2015-11-16
发表于 2015-10-18 05:32:00 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

Archiver|星组游戏论坛 ( 京公网安备110403080002 )  

GMT+8, 2018-1-17 13:24

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部