Servlet不是线程安全的。
多线程访问同一个资源,可能造成线程的不安全.
什么是线程安全?
如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。
为什么是线程不安全的?
因为servlet是单例的,在多个线程并发访问同一个资源时,可能造成线程不安全在servlet中,非static的成员变量只有一份,相当于一个对象,多个客户端相当于多个线程,都访问的同一个空间.
处理方式:避免并发
在servlet中不要使用成员变量,要使用局部变量.
每一个用户,每一个请求都会调用service方法,而局部变量在service方法中,这样每个线程访问的都是新的空间.