我们知道一个servlet只能有一个对象,而且还是有服务器自己创建的
所以servlet是线程不安全的
线程不安全的优点是速度快,缺点是容易造成脏数据
什么是脏数据呢?
所谓的脏数据就是就是一个数据被两个及两个以上的人同时访问,而且不是全部都是读操作,这个样就容易造成脏数据
我们我们应该怎么避免脏数据呢?
下面我提供3个技巧
- 不要在servlet中创建成员,创建局部变量就可以了
- 可以创建无状态成员,什么是无状态成员呢?所谓的无状态成员就是并没有逻辑操作,只是简单地打印个东西
- 可以创建有状态的成员,但是必须是只读的,比如,在servlet中创建了一个类A的对象,但是类A只有get()方法,没有set()方法