JSP/Servlet线程安全

携带servlet开发时间。线程安全是非常重要的。否则会导致一些意想不到的结果。

Servlet的生命周期是由Web负责集装箱,什么时候client第一个请求Servlet时间,容器负责初始化Servlet,这就是实例化Servlet类别.这种情况后,负责client的请求,一般不会再实例化这个Servlet类,也就是这个servlet实例被多个线程共享。

那么如何才干是Servlet安全呢?答案是不要使用实例变量或类变量。当然你也能够使用synchronized同步方法或使用单线程模型,但这样效率不高。

暂时变量是不会影响线程安全的,由于他们是在栈上分配空间,并且每一个线程都有自己私有的栈空间.

JSP同步也一样。由于jsp会被编译成servlet。

在jsp中<%! String unsafeVar; %>声明的变量事实上是servlet的实例变量,而<% String safevar %>变量声明是局部变量。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

posted @ 2015-07-12 15:25  mfrbuaa  阅读(493)  评论(0编辑  收藏  举报