guokehua(@yahoo.com.cn oy Java! 1010 31SessionEJB(2) 郭克华J2EE框架实战教学视频
oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 31SessionEJB SessionEJB(2)
guokehua(@yahoo.com.cn oy: Java Bean和EJB Java bean是一个符合某种规范的Java类文件 > Enterprise Java Bean并不是一个单独的文件其组成包括 类文件:实现基本方法的类,封装了需要实现的商务逻辑/数据逻 1010 辑或消息处理逻辑,要与一些严格定义的接口保持一致 接口文件:接口作为EJB组件模型的一部分要求类文件必须提供 实现的方法 描述文件:作为部署描述文件 一些资源文件 Javabean只能作为一个类被调用(只有调用的时候才运 行 (JavaBean是一个进程内组件) >BB可以作为一个服务被调用(可以单独运行)(EJB是一个进 程级组件) 郭克华J2EE框架实战教学视频
oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 Java Bean Java Bean和EJB ¾ Java Bean是一个符合某种规范的Java类文件 ¾ Enterprise Java Bean并不是一个单独的文件,其组成包括: ¾ 类文件:实现基本方法的类,封装了需要实现的商务逻辑/数据逻 辑或消息处理逻辑,要与一些严格定义的接口保持一致 ¾ 接口文件:接口作为EJB组件模型的一部分,要求类文件必须提供 实现的方法 ¾ 描述文件:作为部署描述文件 ¾ 一些资源文件 ¾ JavaBean只能作为一个类被调用(只有调用的时候才运 行)(JavaBean是一个进程内组件) ¾ EJB可以作为一个服务被调用(可以单独运行) (EJB是一个进 程级组件)
guokehua(@yahoo.com.cn 了y何时使用会话Bean 使用会话bean对针对于某一客户的处理 或控制对象建模 「·对工作流、任务和管理活动等建模(如订 房、购物车等) ·协调多个实体bean,控制实体bean之间 打的 交互 ·将业务应用逻辑从客户端转移到服务器端 郭克华J2EE框架实战教学视频
oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 何时使用会话Bean • 使用会话bean 对针对于某一客户的处理 或控制对象建模 • 对工作流、任务和管理活动等建模(如订 房、购物车等) • 协调多个实体bean,控制实体bean之间的 交互 • 将业务应用逻辑从客户端转移到服务器端
guokenua(@yahoo.com.cn oy yava stateless Session Bean的生命周期 Does not Exist 根据具体情况决 定是否需要删除 1010 Bean实例 1. setsession Context 2. ejbCreate eib Remove 根据具体情况决 定是否需要创建 Ready 新的Bean实例 客户端 调用商 业方法 郭克华J2EE框架实战教学视频
oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 stateless stateless SessionBean SessionBean的生命周期 根据具体情况决 定是否需要创建 新的Bean实例 根据具体情况决 定是否需要删除 Bean实例 客户端 调用商 业方法
guokehua(@yahoo.com.cn oy Java! stateless session bean生命周期 首先,应用服务器初始化Bean实例并放入Bean池,Bean池 的大小可以事先设定初始化Bean实例的时间由容器自己 决定 0>容器初始化Beam实例时首先调用Beam的构造函数 Class. newInstanceO,然后调用 setSession Context()把一个 Context对象和Bean相关联 >Home对象的 create方法创建的是EB对象,是Bean实例的 代理,而不是Bean实例,多个EJB对象可能只对应一个Bean 实例 >对于无状态 Session bean,调用 ejbCreateO方法创建EJB对 象时不带参数 客户端调用的 Removed方法只是删除了BJB对象,而Bean 的实例删除完全取决于EB容器 郭克华J2EE框架实战教学视频
oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 stateless stateless SessionBean SessionBean生命周期 ¾ 首先,应用服务器初始化Bean实例并放入Bean池,Bean池 的大小可以事先设定,初始化Bean实例的时间由容器自己 决定 ¾ 容器初始化Bean实例时,首先调用Bean的构造函数 Class.newInstance(),然后调用setSessionContext()把一个 Context对象和Bean相关联 ¾ Home对象的create()方法创建的是EJB对象,是Bean实例的 代理,而不是Bean实例,多个EJB对象可能只对应一个Bean 实例 ¾ 对于无状态Session Bean,调用ejbCreate()方法创建EJB对 象时不带参数 ¾ 客户端调用的Remove()方法只是删除了EJB对象,而Bean 的实例删除完全取决于EJB容器