`

EJB 自学 教程 一些 基本 概念

阅读更多

 一.会话BeanSession Bean 用于实现业务逻辑,它分为有状态bean 和无状态bean。每当客户端请求时,容器就会选择一个Session Bean 来为客户端服务。Session Bean 可以直接访问数据库,但更多时候,它会通过Entity Bean实现数据访问。

1.无状态会话Bean 主要用来实现单次使用的服务,该服务能被启用许多次,但是由于无状态会话Bean 并不保留任何有关状态的信息,其效果是每次调用提供单独的使用。在很多情况下,无状态会话Bean 提供可重用的单次使用服务。其原理:当一个无状态会话Bean 发布到EJB容器时,容器就会为她创建一个对象stub并把她注册进容器的JNDI 目录,客户端代码使用她的JNDI名从容器获得他的stub。通过这个stub,客户端可以调用她的业务方法

2.有状态会话Bean 是一个可以维持自身状态的会话Bean。每个用户都有自己的一个实例,在用户的生存期内,StatefulSession Bean 保持了用户的信息,即“有状态”;一旦用户灭亡(调用结束或实例结束),Stateful Session Bean 的生命期也告结束。即每个用户最初都会得到一个初始的Stateful Session Bean

3.本地接口与远程接口的区别:

@Local @Remote 注释都不存在时,会话Bean 实现的接口默认为Local 接口。如果在本机调用EJB确保客户端与EJB 容器运行在同一个JVM,否则会出错误),这时Local 接口访问EJB 优于Remote 接口,因为Remote接口访问EJB需要经过远程方法调用(RPCs)环节,而Local 接口访问EJB 直接从JVM 中返回EJB 的引用。应用情况:当会话Bean 的某些方法只EJB容器内部调用而不对外暴露时,可以把他定义在Local接口. Remote Local 接口可以指向同一个业务接口,这样客户端就不会因调用接口的不同而来回切换业务接口类。当然这种使用场合是在Remote Local 的接口方法相同的情况下。

二.消息驱动Bean(MDB):是设计用来专门处理基于消息请求的组件。它能够收发异步JMS 消息,并能够轻易地与其他EJB 交互。它特别适合用于当一个业务执行的时间很长,而执行结果无需实时向用户反馈的这样一个场合。

以上类容来自:blog.csdn.net/pengchua/archive/2008/07/23/2695717.aspx

 

 

分享到:
评论

相关推荐

    JAVA自学教程(史上最全).zip

    3. **类与对象**:讲解面向对象编程的基本概念,包括类的定义、对象的创建、封装、继承和多态等特性。 4. **数组与集合**:介绍一维和多维数组,以及ArrayList、LinkedList、HashSet和HashMap等集合框架的使用。 5...

    J2EE 21天自学教程 Sams最新出版

    《J2EE 21天自学教程》是Sams出版社发布的一本针对Java企业级应用开发的详尽指南。这本教程旨在帮助读者在21天内系统地学习和掌握J2EE技术栈,以便快速进入Java企业级开发领域。J2EE(Java 2 Platform, Enterprise ...

    EJB初学者PPT及JBOSS包下载

    本教程面向初学者,旨在帮助理解EJB的基本概念、组件类型及其在JBOSS应用服务器中的部署。 **1. EJB概述** EJB是一种服务器端组件,它可以处理复杂的企业级功能,如安全性、并发性、持久化和事务管理。EJB标准分为...

    JAVA自学之路 七路线图明细

    1. **J2SE 面向对象**:理解面向对象的基本概念,如封装、继承和多态。深入学习内存管理,包括对象创建、引用和垃圾回收。掌握递归算法,熟悉集合类(如ArrayList, HashMap),泛型的使用,自动装箱与拆箱机制,以及...

    java自学之路num1

    掌握HttpServletRequest和HttpServletResponse对象,ServletContext,HTTP协议的基本概念(GET、POST)。理解JSP的语法,包括JSTL标签库,以及Servlet与JSP之间的数据传递。 6. **Struts**:学习Model 1和Model 2...

    Java 2编程21天自学通(2)

    9. **输入/输出流**:掌握I/O流的基本概念,如FileInputStream、FileOutputStream、BufferedReader、PrintWriter等,用于文件读写和数据传输。 10. **多线程**:Java支持多线程编程,了解Thread类、Runnable接口...

    w3schoolWeb全套教程.zip

    2. **CSS教程**:介绍如何通过CSS来控制网页的布局和样式,包括选择器、盒模型、响应式设计等概念。 3. **JavaScript教程**:讲解动态网页的实现,包括变量、数据类型、函数、DOM操作、AJAX(异步JavaScript和XML)...

    清华大学Java教程

    这个教程以网页形式呈现,使得学习过程更加便捷,且易于互动,适合自学或课堂教学。 Java是一种广泛应用于互联网、移动应用、企业级软件开发的高级编程语言。它以其“一次编写,到处运行”的特性而闻名,这意味着用...

    java程序设计教程

    2. **类与对象**:深入讲解面向对象编程的基本概念,包括类、对象、封装、继承、多态等。这些是Java的核心特性,也是理解和创建复杂软件系统的关键。 3. **数组与集合**:介绍如何处理和操作数组,以及Java集合框架...

    自学java学习的路线

    以下是一些关键知识点的详细说明: **J2SE 部分** 1. **Java 基础**: 包括 Java 语法和面向对象编程的基础概念,如类、对象、封装、继承和多态。 2. **API 集合框架**: 学习如何使用 ArrayList、LinkedList、...

    JAVA教程PPT版

    在Java的世界里,无论是面向对象编程的基本概念,还是深入的多线程、网络编程,这个教程都可能涵盖。 Java是一种广泛使用的高级编程语言,以其“一次编写,到处运行”的跨平台特性闻名。其设计哲学是“简单性、面向...

    Java就业培训教程pdf高清

    本教程以其通俗易懂的语言和高清PDF格式,为学习者提供了优质的自学资源。 Java是一种广泛应用的、面向对象的编程语言,其设计目标是具有简单性、面向对象、健壮性、安全性、可移植性、高效性和多线程等特点。Java...

    Java初学者经典教程

    8. **多线程**:介绍并发编程的基本概念,如线程的创建、同步和通信,理解Thread类和Runnable接口。 9. **枚举与注解**:讲解Java中的枚举类型和注解,这些是Java特有的特性,用于增强代码的可读性和可维护性。 10...

    java核心基础,适合自学,以及由基础的学习

    "Java核心基础"这个主题涵盖了从入门到进阶的所有基本概念,对于自学Java的人来说,是一份极好的学习资源。它分为1-18章,每章都包含了PPT教程和案例演示,这种结构化的学习材料能够帮助初学者系统地掌握Java编程。 ...

    java自学手册上(2008年2月版)

    【Java自学手册上(2008年2月版)】是一份专为初学者设计的教程,旨在帮助读者掌握Java编程语言的基础知识。这份资料虽然分为了上下两部分,但其完整的内容覆盖了Java的核心概念和技术,对于想要在IT行业中深入学习...

    MyEclipse 6 Java 开发中文教程pdf(刘长炯)11-18.rar

    13. **EJB与JPA**:介绍企业级Java Bean(EJB)的概念和使用,以及Java持久化API(JPA)在数据访问中的作用。 14. **Struts、Spring、Hibernate整合**:讲解如何在MyEclipse中整合这三个主流的开源框架,实现MVC...

    北大JAVA教程

    这份教程可能包含了从基础到高级的全方位Java知识体系,是北京大学为学生或自学者精心准备的教学材料。由于在网上很难找到这样的高质量资源,因此这份教程显得尤为珍贵。 Java是一种广泛应用于互联网开发、移动应用...

    北京大学java教程

    "北京大学Java教程"是一个专门为学习Java设计的教学资源,旨在帮助学生和自学者深入理解和掌握Java的核心概念和技术。 这个教程可能涵盖了以下主要知识点: 1. **Java基础知识**:包括Java的历史背景、特性、平台...

    雍俊海java程序设计教程(第2版)

    该书由清华大学出版社出版,旨在全面、深入地介绍Java编程语言的基本概念、语法特性和实际应用。在本教材中,作者不仅注重理论知识的讲解,更强调实践操作和编程思维的培养,使得读者能够快速掌握Java编程技术。 1....

    java教程-清华版,非常全,非常好

    1. **Java基础知识**:这部分涵盖了Java语言的基本概念,如变量、数据类型、运算符、流程控制(if-else,switch,for,while等)、方法定义与调用、数组等。这是所有Java学习者的起点。 2. **面向对象编程**:Java...

Global site tag (gtag.js) - Google Analytics