码迷,mamicode.com
首页 > 其他好文 > 详细

servlet基本概念

时间:2015-06-27 21:29:51      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:

一、servlet是一个供其他java程序调用的java类,比如tomcat服务器,它不能独自运行,它的运行由servlet引擎来控制和调度。


二、servlet是单例,多线程

针对多个客户端访问servlet的情况,servlet只实例化一次,也就是其init()方法只运行一次。

而每次请求,servlet引擎都会创建新的servletrequest和servletresponse相应对象,然后作为参数传递给service()方法,service再根据请求调用doget()或者dopost()

servlet是多线程的。


三、多线程的安全问题

对于全局变量,如果进行高并发的时候,同一个变量,一个线程请求还未执行完,下一个线程请求就来了。

这就造成了,变量的操作出现错误。

比如 对于全局变量 i

当第一个线程取出来,进行i++操作,i++还未执行,下一个线程就到来,也进行i++操作,这样其实i++执行了两次,但最终的结果只是加了1。


要解决这个问题,还是使用了同步的方式,使用synchronized



版权声明:本文为博主原创文章,未经博主允许不得转载。

servlet基本概念

标签:

原文地址:http://blog.csdn.net/a879365197/article/details/46662593

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!