其实,在ejb中比较复杂的bean不是会话bean,不是消息驱动bean,而是实体bean.因为它涉及到对象序列化,o/r mapping等一些持久化技术(还有一直没有流行起来的对象数据库).
【程序编程相关:[Linux]Linux平台下挂载FAT】
什么是实体bean? 实体bean是有着一组属性并且每个属性与数据库表中的每个字段一一对应并且公开get与set方法供外界访问.如图: 【推荐阅读:疯了的Hibernate(3) -- 另】
1.因为对象的创建与删除是十分消耗系统资源的,所以不可以为成千上万条记录创建成千上万个对象.解决的办法是将被实例化的bean重复再利用,这样就可以节省这样的开销.容器可以动态的分配实体bean实例给不同的客户端的ejb对象使用,这样不但节省了容器不必要地实例化bean的开销,而且节省了系统资源. 【扩展信息:[算法C语言描述]大数、巨数的阶乘算法】
每一个属性对应数据库表中的一个字段,这样一个bean实例就对应了表中的一条记录.这里要注意的是,并不是固定的一个实例对应一条记录.如表中有5条记录,不一定有5个实体bean实例来对应,有可能3个,有可能8个.为什么呢?
2.因为ejb规定只能有一个线程可以运行在一个bean实例中,也就是说会话bean,消息驱动bean,实体bean都是单线程的.所以为了使不同的客户端方便的访问相同的数据,容器将实例化相同实体bean的多个实例供不同的客户端使用.... 下一页