简要介绍Servlet

10 篇文章 0 订阅
7 篇文章 0 订阅

一、编译、配置、部署

 

        servlet工程位于/home/www/wb/java/testservlet,源文件放在src目录下,web.xml和classes位于WEB-INF目录下。

        发布目录在:/usr/share/tomcat7/webapps/testservlet。

 

以下是一次编辑、编译、配置、部署的过程:

        1. export CLASSPATH=$CLASSPATH:/home/www/wb/java/testservlet/src/

        2. CLASSURL="/home/www/wb/java/testservlet/WEB-INF/classes"

        3. SRCURL="/home/www/wb/java/testservlet/src"

        4. cd $SRCURL/com/xxx/servlet

        5. vi HelloServlet.java

        6. javac HelloServlet.java -d $CLASSURL

        7. 修改web.xml

        8. cp -r /home/www/wb/java/testservlet/WEB-INF /usr/share/tomcat7/webapps/testservlet

 

二、servlet生命周期

 

        每个servlet服务器只创建单一实例,每个用户请求都会引发新的线程。首次创建servlet时,它的init方法会得到调用,因此,init是防止一次性设置代码的地方。在这之后,针对每个用户的请求,都会创建一个线程,该线程调用前面创建的实例的service方法。多个并发请求一般会导致多个线程同时调用service。之后,由service方法一句接收到的HTTP请求的类型,调用doGET,doPost,或其他doXxx方法。最后,如果服务器决定卸载某个servlet,他会首先调用servlet的destory方法。

 

三、SingleThreadModel接口

 

        原则上,可以让servlet实现SingleThreadModel接口,阻止多线程访问,但是严重影响并发性能,servlet2.4规范中明确反对使用这种方式。绝不要使用这个接口,改用多线程同步控制共享资源较好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值