`
ysen
  • 浏览: 122182 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ejb有状态与无状态的比较

    博客分类:
  • EJB
阅读更多

ejb @Stateful注解表明该session bean 为有状态对象 就是,每次通告jndi 查找的时候生成新的对象

ejb @Stateless 注解表明被注解 session bean 为无状态对象 ,类似singleton 单例对象

 因为Stateful对象的需要令牌维持客户端和该对象间的通讯,所以性能方面不如Stateless

 

业务对象一般采用单例session对象,所以一般采用Stateless 对象;

 


定义接口

public interface Ejb02 {

	public int getResult(); 
}

 

 

业务接口的实现

@Remote
@Stateful
public class Ejbstateful implements Ejb02 {

	 private int i;
		public int getResult() {
		 return	i++;
		}

}

 

@Remote
@Stateless
public class Ejbstateless implements Ejb02 {
    private int i;
	public int getResult() {
	 return	i++;
	}

}

 

 

j2se 客户端的实现

 

public class Test {

	public static void main(String[] args) throws Exception {

		InitialContext context=new InitialContext();
	//非单例,每次测试的时候 都是从0开始
 		Ejb02 ejb02=(Ejb02)context.lookup("Ejbstateful/remote");
	
		int s=ejb02.getResult();
 	System.out.println(s);
 	s=ejb02.getResult();
 	System.out.println(s);
 	s=ejb02.getResult();
 	System.out.println(s);
 	s=ejb02.getResult();
 	System.out.println(s);
 	
 	
	 
		
	
	//单例对象,每次测试都从上次的最大数开始
Ejb02 ejb02_2=(Ejb02)context.lookup("Ejbstateless/remote");
	
	 
	 int x =ejb02_2.getResult();
	x=ejb02_2.getResult();
	System.out.println(x);
	x=ejb02_2.getResult();
	System.out.println(x);
	x=ejb02_2.getResult();
	System.out.println(x);
	 	
	}
 
}

 

 

 

0
1
2
3
25
26
27

 

 

分享到:
评论

相关推荐

    ejb有状态bean和无状态bean

    有状态会话Bean与无状态Bean的主要区别在于它们能保留客户端会话状态。当客户端首次与有状态Bean交互时,服务器会为该客户端创建一个专用实例。这个实例会记住客户端的所有交互信息,直到客户端结束会话或Bean被...

    有状态和无状态EJB之间的差异;

    **有状态和无状态EJB(Enterprise JavaBeans)之间的差异** 在Java企业级应用开发中,EJB是一种标准组件模型,用于构建可扩展、安全且事务处理能力强大的服务器端应用程序。EJB分为两种主要类型:有状态会话bean...

    EJB,有状态,无状态,实体bean笔记,及例子

    与无状态session bean相反,有状态session bean保留了客户端会话的上下文。它们可以记住客户端的多个调用之间的状态,适合处理涉及多个步骤的事务或个性化用户界面。然而,由于它们需要存储状态,所以内存占用较大...

    EJB3 示例有状态和无状态会话bean

    **EJB3(Enterprise JavaBeans 3)**是...总之,EJB3的有状态和无状态会话Bean提供了灵活的业务逻辑处理方式,适用于不同类型的场景。理解它们的区别以及如何在Web应用程序中进行测试和部署是Java EE开发者必备的技能。

    基于java的开发源码-EJB中有、无状态SessionBean的两个例子.zip

    基于java的开发源码-EJB中有、无状态SessionBean的两个例子.zip 基于java的开发源码-EJB中有、无状态SessionBean的两个例子.zip 基于java的开发源码-EJB中有、无状态SessionBean的两个例子.zip 基于java的开发源码-...

    Java EJB中有、无状态SessionBean的两个例子

    Java EJB中有、无状态SessionBean的两个例子,的无状态SessionBean可,会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;  在有状态SessionBean中,用累加...

    EJB3.0无状态SessionBean例子

    **EJB3.0无状态SessionBean例子** Enterprise JavaBeans(EJB)是Java平台上的一个核心组件,用于构建企业级分布式应用。EJB3.0是EJB规范的一个重大改进,它引入了诸多简化开发的新特性,使得EJB更加轻量级且易于...

    实战EJB 实战EJB 实战EJB

    与无状态会话Bean不同,有状态会话Bean会在客户端之间保持状态,因此每个客户端都有一个与之关联的唯一实例。 **有状态SessionBean寿命周期** 容器管理有状态会话Bean的生命周期,包括实例的创建、维护和销毁。当...

    Java EJB中有、无状态SessionBean的两个例子.rar

    在给定的"Java EJB中有、无状态SessionBean的两个例子"压缩包中,可能包含了以下内容: - 有状态SessionBean示例:可能包含一个实现SSB的Java类,以及对应的接口。这个类会覆盖一些方法来处理客户端的请求,并在...

    java开发无状态EJB应用

    与有状态会话Bean不同,无状态会话Bean并不保存客户端状态,这使得它们更加轻量级且易于扩展。本文将详细介绍如何开发一个无状态会话Bean并在WebLogic服务器上部署及调用。 #### 二、无状态会话Bean基础概念 在深入...

    基于Java的EJB中有、无状态SessionBean的两个例子.zip

    - 与无状态Bean相反,有状态SessionBean保存了客户端会话的状态。它们可以跟踪多个调用之间的信息,例如购物车应用中的用户选择商品的例子。 - 生命周期:有状态SessionBean在客户端首次调用时创建一个实例,并在...

    基于Java的源码-EJB中有、无状态SessionBean的两个例子.zip

    总的来说,这个压缩包为Java开发者提供了一个学习EJB Session Bean的良好起点,无论是有状态还是无状态,都能帮助你更好地理解和应用这一强大的组件。在实践中,结合其他Java EE技术,如JPA(Java Persistence API)...

    Java EJB中有、无状态SessionBean的两个例子.zip_1H1_Java EJB_UOL

    2. **无状态Session Bean (Stateless Session Bean)**:与有状态Session Bean相反,无状态Session Bean不保留任何关于客户端会话的信息。每次客户端调用方法时,它都独立于之前的调用。无状态Session Bean适用于那些...

    实战角度比较EJB2和EJB3的架构异同

    例如,一个无状态Session Bean在EJB3中可以用以下代码表示: ```java package example; @Stateless public class TestSessionBean implements TestSessionLocal { public void xxxx() { System.out.println(...

    基于java的EJB中有、无状态SessionBean的两个例子.zip

    本教程将深入探讨基于Java的EJB中的有状态和无状态Session Bean。 1. 有状态Session Bean(Stateful Session Bean) 有状态Session Bean(SFSB)能够保持与客户端的会话状态,即它能够记住客户端的交互历史。这种...

    在ArcGIS中应用EJB的实例,用无状态BEAN连接地图服务器java.zip

    总结来说,这个实例展示了如何利用Java的EJB技术,特别是无状态Session Bean,来与ArcGIS地图服务器进行交互。通过这种方式,开发者可以构建可复用、可扩展的服务,以满足GIS应用中的各种需求,如地图查询、数据分析...

    Java EJB中有、无状态SessionBean的两个例子.7z

    实现有状态Session Bean的步骤与无状态类似,但需要使用`@Stateful`注解,并且生命周期管理更为复杂: 1. 定义接口:创建业务方法接口。 2. 实现接口:创建实现接口的EJB类,使用`@Stateful`注解。 3. 存储和管理...

    基于Java的实例源码-EJB中有、无状态SessionBean的两个例子.zip

    与无状态SessionBean相反,有状态SessionBean能够保留与特定客户端交互的信息,存储了客户端的状态。这使得它更适合于需要跟踪用户购物车、游戏进度等场景。在压缩包中,你可能看到一个名为` StatefulExample `的类...

Global site tag (gtag.js) - Google Analytics