实体bean是enterprise javabean的重要组成部分,用于处理数据,与sessionbean不同,sessionbean用于处理商业逻辑,实体bean是数据对象,在关系数据库中表示一条数据记录或更复杂数据集.其主要作用是创建、修改、查询、删除数据。
简单的说你可以把一条数据看作一个对象,
  当创建这个对象时,实质上就在数据库表中插入一条记录
  当删除这个对象时,实质上就在数据库表中删除一条记录
  当修改这个对象的一个数据项时,实质上就在数据库表中修改这条记录
  当读取这个对象的一个数据项时,实质上就在数据库表中读取该条记录的某列数据
  

解决方案 »

  1.   

    to blueseashore:
    我觉得,你的描述里面有一点点错误:“sessionbean用于处理商业逻辑”。session bean是会话bean,它并不处理商业逻辑,只是提供与实体Bean和EJBObject的连接,通过对实体Bean的调用完成对数据库的操作,与EJBObject的连接完成商业逻辑的处理,也就是说:商业逻辑的处理部分是在EJBObject中完成的。
    不知我说的是否有误,希望指正。
      

  2.   

    我对此概念也已能理解,但就是不知道如何使用,特别是在VAJ中,大侠可否指点我一点原代码。另,VAJ中,实体 bean有分bean-managed persistence (BMP) ,container-managed persistence (CMP) ,关于此,小弟愚昧,又不清楚了,望指点。万分感谢!!!!!!!!
      

  3.   

    qingrun一般设计是要求吧商务逻辑封装在session bean。blueseashore说的是正确的。这正是j2ee的分层思想的体现。session还可以分为是否有状态,主要目的就是实现商务逻辑。
      

  4.   

    to taozabc
      bean-managed persistence 和container-managed persistence 是两种编写entitybean的方式.前者你需要使用jdbc api或 sql/j自己实现javax.ejb.entitybean的接口,
    后者有容器提供实现javax.ejb.entitybean的接口,你只需确定哪些数据是entitybean要使用的
    两者的优缺点是:
    前者需要大量的编码(相对于后者),但能提供很好的可重用性,
    后者大部分编码容器已经定义,但由于各个容器厂商的没有一致的标准,因此你的entitybean的只能受限于指定的容器.
      

  5.   

    多谢 blueseashore!多谢qingrun!概念性的小弟已清楚,但实际使用还有困难,能否提供点原代码???先谢过了!!!
      

  6.   

    to blueseashore:
    我记得的。:)最近我就会给你一个确定的答复,告诉你如何面试,及相关的事情。