# 概念

这个概念在多线程中一直被提及,实际上很简单。

1. 有状态就是有 数据存储功能有状态对象(Stateful Bean) ,就是有实例变量的对象,可以保存数据,是 非线程安全 的。在不同方法调用间不保留任何状态。

2. 无状态就是一次操作, 不能保存数据无状态对象(Stateless Bean) ,就是 没有实例变量的对象 ,不能保存数据,是不变类,是线程安全的。

3. 引用无状态的对象,则自己也可以是线程安全的

1
2
3
4
public class StatelessBeanService {   
// 虽然有billDao属性,但billDao是没有状态信息的,是Stateless Bean.
BillDao billDao;
}