littleboys 原创ejb 学习笔记1、ejb 基础知识(1) 无状态会话bean不保存客户机的会话状态优点:使用小量的实例即可满足大量的客户。每个实例都没有标识,相互之间是等价的。等?的无状态会话bean: 多次和一次调用的结果和效应相同。在集群中可以负载均衡 a 机器失败,可以在b机器上重试非等?的无状态会话bean: 如:计数器不能自动因故障而进行切换。(2) 有状态会话bean保存客户机的会话状态特点: 在有会话状态会话的bean例子中,出纳员的数量等于活动的顾客的数量,这可以简化编程模式weblogic 通过内存复制技术 在集群中进行负载均衡内存复制技术: 每个有会话状态的bean实例都将存储在两个服务器的内存中,一个服务器作为主服务器,另一个作为辅助服务器。如果主失败,辅助变为主,然后自动选择别的可用的服务器作为辅助。遗憾: 很难在servlet 和jsp中用好有状态会话...
yippit 原创 weblogic是一个性能卓越的j2ee服务器,在我国的使用者在快速增长.但现在有关它的中文资料基本没有,更没有介绍使用经验方面的。下面是本人在学习使用weblogic6.0中得到的一些经验,写出来与大家分享。 一、weblogic6.0的安装:weblogic6.0自带了jdk1.3,所以不用预先安装jdk就可以直接安装它,在win2000平台是一个exe文件,直接运行它即可;在unix平台上的安装包是一个*.bin文件,用sh运行它就可以了,最好是加 -i console的控制台选项(如果不加,可能会报classnofound等错误)如下所示:sh weblogic60_sol.bin -i console的控制台 注意:unix系统的tmp目录(环境变量tmpdir或tmp_dir所指的路径)应有足够的空间,因为weblogic6.0安装时先解压文件到系统的tmp...
自管理的事务 如果声明一个bean的事务控制为tx_bean_managed,则这个bean可以访问事务服务。当事务控制应用于单个的方法时这个控制只能应用于整个的bean. bean访问事务服务的能力不能只对某个方法起作用。 因此一个方法声明事务控制为tx_bean_managed,而另一个方法声明为其它不同的事务控制是错误的。厂商的安装工具应该能检测到并报告这个错误。 bean分别通过初始化时setsessioncontext()或setentitycontext()方法的参数sessioncontext或entitycontext来访问事务服务。这些接口都是ejbcontext的子类。ejbcontext的定义如下: public interface javax.ejb.ejbcontext {public identity getcalleridentity();public boo...
3.事务 corba ots ejb的事务模型与ots类似。事实上,corba兼容的ejb服务器必须提供一个ots兼容的事务服务。理解ots如何工作有助于理解ejb中事务的工作方式。 定义事务 一个事务正式地定义了一个原子工作单位。一个事务中可以包含多个操作,当事务终止时,所有执行的操作或者完全执行或者完全废弃。这称为提交和回滚。 在数据库应用中广泛地使用事务。好的数据库产品对事务提供很强的支持。一个事务中访问的记录在整个事务持续期间保持锁定状态。基于数据库产品在事务开始时可以选定不同的锁定状态。选定的锁定级别应在其它的事务中优化操作的并发访问时保证数据的完整性。网络上的事务可能是分布式的,例如客户端可能在单个事务中访问两个不同的数据库。为了支持分布式事务,大多数事务管理器(包括数据库)支持两段提交。在两段提交协议中,事务管理器在准备提交事务前首先询问所有的事务参与者的工作是否完成。这是协...
实体bean的内外存交换 现在应该来看看javax.ejb.entitybean接口。 public interface javax.ejb.entitybean extends enterprisebean {public void ejbactivate() throws remoteexception;public void ejbpassivate() throws remoteexception;public void ejbremove() throws remoteexception,removeexception;public void setentitycontext(entitycontext ctx) throws remoteexception;public void unsetentitycontext() throws remoteexception;publi...
实体bean 实体bean的角色 实体bean用来代表底层的对象。最常用的是用实体bean代表关系库中的数据。一个简单的实体bean可以定义成代表数据库表的一个记录,也就是每一个实例代表一个特殊的记录。更复杂的实体bean可以代表数据库表间关联视图。在实体bean中还可以考虑包含厂商的增强功能,如对象--关系映射的集成。 通常用实体类代表一个数据库表比代表多个相关联的表更简单且更有效。反过来可以轻易地向实体类的定义中增加关联,这样可以最大地复用cache并减小旧数据的表现。 实体bean和对话bean的比较 看起来会话bean好象没什么用处,尤其对于数据驱动的应用程序。当然事实并不是这样。因为实体bean(譬如说)代表底层数据库的一行,则实体bean实例和数据库记录间就是一对一的关系。因为多个客户端必须访问底层记录,这意味着,不同于会话bean,客户端必须共享实体bean。因为是共享的,所...
会话bean 会话bean是一种通过home interface创建并对客户端连接专有的enterprise bean.会话bean实例一般不与其它客户端共享。这允许会话bean维护客户端的状态。会话bean的一个例子是购货车,众多顾客可以同时购货,想他们自己的购货车中加东西,而不是向一个公共的购货车中加私人的货物。定义一个会话bean 可以通过定义一个实现javax.ejb.sessionbean接口的类来创建一个会话bean.该接口定义如下: public interface javax.ejb.sessionbean extends javax.ejb.enterprisebean {public void ejbactivate() throws remoteexception;public void ejbpassivate() throws remoteexception;pu...
理解ejb组件 你现在应该已经熟悉了整个ejb体系结构及其主要的部件。这一节更详细地描述了这些部件,并解释它们运行时的行为语意。 home接口 ejb库使用enterprise bean的客户端通过它的home接口创建它的实例。home接口包含一个或多个用来创建enterprise bean实例的create()方法。这个home接口不是由bean来实现,而是通过称为home object的类来实现。一个home object的实例在服务器中实例化,使得客户端可以访问它们。 定位home object 一个home object的引用被放在名字服务中,客户端能通过jndi访问它。ejb服务器一般提供某种名字空间的实现,虽然有时可以使用外部的名字空间。在这两种情况下客户端都必须知道名字空间的位置以及jndi的上下文类。例如,一个客户端的applet可能接收名字空间和jndi上下文类作为app...
服务框架 ejb并不是一个产品。它是java服务器端服务框架的规范,软件厂商根据它来实现ejb服务器。应用程序开发者可以专注于支持应用所需的商业逻辑,而不用担心周围框架的实现问题。 ejb规范详细地解释了一些最小但是必须的服务,如事务,安全和名字等。软件厂商根据这些规范要求以保证一个enterprise bean能使用某个必需的服务。规范并没有说明厂商如何实现这些服务。这使得通过阅读规范来学习ejb更加困难,因为它允许厂商在不牺牲核心服务的可移植性的前提下来提供一些增强功能。 javabeans和enterprise javabeans javabeans是java的组件模型。在javabeans规范中定义了事件和属性等特征。enterprise javabeans也定义了一个java组件模型,但是enterprise javabeans组件模型和javabeans组件模型是不同的。 ja...
ejb 技术的数据库应用一、j2ee 技术简介 j2ee是 sun 公司提出的在分布式环境中的一种体系结构,它提供了一种基于组件的设计、开发、集成、部署企业应用系统的方法,j2ee平台提供了多层分布式的应用系统模型、重用组件的能力、统一的安全模型和灵活的事务控制。基于组件的j2ee企业应用系统具有平台独立性,所以不受任何软件产品和任何软件厂家api的约束。 j2ee定义了下面的组件:· application client 和 applets 是客户层组件; · java servlet 和 jsp 组件是web 层组件; · enterprise javabean(ejb) 组件是业务处理层组件。 ejb 技术是j2ee 体系一部分,ejb 组件是用 java 语言编写的,是可以被客户端程序存取的可重用的服务器端组件,它运行在j2ee 服务器上...
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器