有三种企业级的bean: 会话(session) beans, 实体(entity) beans, 和 消息驱动(message-driven) beans. 会话bean 表示与客户端程序的临时交互. 当客户端程序执行完后, 会话bean 和相关数据就会消失. 相反, 实体bean 表示数据库的表中一行永久的记录. 当客户端程序中止或服务器关闭时, 就会有潜在的服务保证实体bean 的数据得以保存.消息驱动 bean 结合了会话bean 和 JMS的消息监听器的特性, 允许一个业务层组件异步接收JMS 消息. 

解决方案 »

  1.   

    jdbc是一个接口,可以放在任何地方,甚至是jsp。但我觉得最好尽量放到entity beans中,一是ejb container提供了许多内在的服务,减少了你的麻烦(当然是在会用之后),二是责任分配的问题,session beans只用来处理企业逻辑,数据库操作由entity beans处理,这样数据结构的变化不会影响到企业逻辑,因为在实际项目中,数据要比企业逻辑更易变化。
      

  2.   

    基本 上同意火鸟的观点。一般情况下用 session bean 来调用 entity bean。这样能完全保证事务,和 并发处理。
      

  3.   

    JMS在什么情况下用的呢?不是和session bean等有功能重复吗