EJB学习笔记
J2ee是企业级的计算平台,它为分布式和基于组件的软件开发提供了一个“操作系统”
Ant是什么工具??
EJB:
什么是EJB?
是一种server端组件结构,简化了开发分布式企业级程序的过程
类比:应用server是一个CD播放器,而组件是一张cd,由于有了cd标准,不论什么cd播放器都能播放cd
EJB分为两个部分:
1、 规范
列出了组件与应用server之间相互约定的规则
2、 一组java接口
组件和server都应该
Java bean 与ejb的差别?
Javabean仅仅是一个含有get/set的java类,javabean是不能部署的
EJB中的角色分工:6种分工
1、 bean供应商:编写组件
2、 应用系统组装商:整个系统的架构师,组织组件协同工作
3、 EJB系统部署员:了解各种执行环境,知道怎么样在server中部署bean
4、 系统管理员:维护和监控已经部署好的系统
5、 容器和server提供商:如weblogic、websphere等等
6、 工具供应商:Jbuilder、wsad、Juint、ant等等
EJB技术是基于RMI和JNDI的,学习之前应了解这两项技术
一个企业级BEAN是一个能够在分布式环境中部署的server端软件组件,一个EJB可能是由一个或者多个java对象组成,Bean用户不必关系组件的组成,它们仅仅和组件的接口打交道。
Bean类型:
1、 会话Bean
模拟商务过程对象,就像动词一样,运行动作
2、 实体Bean
模拟商务数据对象,就像名词一样,如产品、订单等等数据库对象
3、 消息驱动Bean
与会话Bean相似,也是代表动作,仅仅能通过消息来调用它们
全部的Ejb类都必须实现的接口是:javax.ejb.EnterpriseBean
全部的会话bean都必须实现javax.ejb.SessionBean接口
全部的实体bean都必须实现javax.ejb.EntityBean接口
全部的消息驱动bean都必须实现javax.ejb.MessageDriveBean接口
◆远程接口(Remote接口):
EJB对象必须clone bean类的每一个公开的商务方法,bean供应商编写了一个特殊的接口,该接口复制相应的bean类的全部公开的商务方法,该接口称为远程接口(Remote接口)
全部的Remote接口必须来源于javax.ejb.EJBObject
client不能直接调用EJB,client调用的是EJB对象,而不是调用Bean,是client-》EJB对象-》EJB
什么是EJB对象?
EJB对象把全部的client请求都传递给bean,是一种代理对象,具有网络功能,EJB对象把client和Bean连接在一起
client是通过EJB对象调用Bean的,那么,client是怎样调用得到EJB对象的引用的呢?
就是通过Home对象来引用EJB对象的
是EJB对象的制造生成库
功能:
生成EJB对象
查找现存的EJB对象
删除EJB对象
Home接口:
Home对象、EJB对象、Bean实例之间的关系??
因为Home接口生成Bean的速度是很慢的
能够通过本地对象高速、高效的调用企业级Bean,而不是通过EJB对象调用,本地对象实现本地接口,而不是远程接口
EJB对象:请求拦截器
远程接口:请求拦截器上的接口
Home对象:制造生成库
Home接口:制造生成库接口
必须在部署文件里声明组件对中间件服务的要求,比如,使用部署描写叙述来声明:
1、 Bean的管理和生命周期要求:指明EJB容器应该怎么管理这些Bean
2、 持久性要求:是自己处理持久性还是托付容器处理持久性问题
3、 事务处理要求:
4、 安全性要求:
EJB的部署描写叙述是一个XML文件,Bean的提供商负责描写叙述部署文件
Bean类、Home接口、Remote接口以及部署文件一旦生成,就能够打包成EJB-JAR文件了
要传递创建Bean时的參数,须要覆盖Home接口的create方法,而且要与Bean相应
EJB的位置透明:
什么是JNDI?
7、
JMS是用来发送消息到消息驱动Bean的API
EJB学习笔记的更多相关文章
- 【EJB学习笔记】——EJB开发环境搭建(Eclipse集成JBoss)
之前一直用的EJB开发环境是他们搭建好的,直接拿来用,不过还是感觉老吃别人嚼好的不太好吃,所以自己动手来玩一玩. EJB开发依赖的最基本的环境:JDK.Eclipse.JBoss,这里简单介绍一下最基 ...
- EJB学习笔记之十(BMT事务和CMT事务)
1.前言 前两篇博客主要介绍了与事务相关的知识.比如事务的一些特性,以及并发产生的问题.本篇来解说一下EJB中两种处理事务的方式.一种是以生命式方式来管理事务(CMT):还有一种则是在EJB内部使用 ...
- EJB学习笔记六(EJB中的拦截器)
1.前言 听到拦截器,预计都不陌生,尤其是在Servlet规范中,充分应用了拦截器的概念.EJB3也提供了拦截器的支持,本质上是轻量级的AOP实现.拦截器能够将多个业务方法中的通用逻辑从业务方法中抽 ...
- [原创]java WEB学习笔记96:Spring学习---Spring简介及HelloWord
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- ETHREAD APC 《寒江独钓》内核学习笔记(4)
继续学习windows 中和线程有关系的数据结构: ETHREAD.KTHREAD.TEB 1. 相关阅读材料 <windows 内核原理与实现> --- 潘爱民 2. 数据结构分析 我们 ...
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- Hibernate 马士兵 学习笔记 (转)
目录(?)[+] 第2课 Hibernate UML图 第3课 风格 第4课 资源 第5课 环境准备 第6课 第一个示例Hibernate HelloWorld 第7课 建立Annotation版本的 ...
- spring学习笔记(一) Spring概述
博主Spring学习笔记整理大部分内容来自Spring实战(第四版)这本书. 强烈建议新手购入或者需要电子书的留言. 在学习Spring之前,我们要了解这么几个问题:什么是Spring?Spring ...
- Java架构师之路 Spring学习笔记(一) Spring介绍
前言 这是一篇原创的Spring学习笔记.主要记录我学习Spring4.0的过程.本人有四年的Java Web开发经验,最近在面试中遇到面试官总会问一些简单但我不会的Java问题,让我觉得有必要重新审 ...
随机推荐
- 使用 JQueryMobile 点击超链接提示“error loading page” 错误
使用jquery mobile创建dialog时出现加载错误,“Error Loading Page”. 原因是:jquery mobile页面默认采用ajax方式进行交互,而ajax方式下是不支持f ...
- VLine2.0——仿阿里巴巴VIPABC真人视频在线教育(基于Flash支持一对多多对多Web在线视频)
感兴趣的朋友可与我联系:acsebt@qq.com 一.登陆页 二.功能页
- 在word 中复选框划勾或叉的方法
输入大写字母R.大写字母Q ,然后将字体改为Wingdings 2, 就分离得到带框的勾和叉.
- 二、第一个ExtJS程序:helloExtJS
开发前的准备 下载并解压ExtJS包后,能够得到下图的文件文件夹结构: 在实际开发过程中并不须要全部的文件和文件夹,所需的包括例如以下文件夹就可以: 若使用eclipse进行开发,仅仅需将上述文件拷贝 ...
- Codeforces Round #277.5 (Div. 2)B——BerSU Ball
B. BerSU Ball time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- AOP 之 6.1 AOP基础 ——跟我学spring3(转)
http://jinnianshilongnian.iteye.com/blog/1418596
- VS上的WebService入门贴
由于项目需要,最近要熟悉一下通过IIS发布WebService.首先熟悉一下使用VS来创建webservice并且调用它. //------------------------------------ ...
- ArrayList线程不安全?
ArrayList是线程不安全的,轻量级的.如何使ArrayList线程安全? 1.继承Arraylist,然后重写或按需求编写自己的方法,这些方法要写成synchronized,在这些synchro ...
- 水晶易表 Xcelsius 2008 安装指南 完美支持office2010(亲手体验)
Xcelsius2008水晶易表是一款很好用的软件.网上已经有破解方法,大家能够尝试一下这款经典软件了. 可是网上对于安装破解过程介绍的不详细或者纷乱,今天我汇总了全部的方法最终成功的安装上了,而且支 ...
- Conversion to Dalvik format failed: Unable to execute dex
最近莫名奇妙遇到“Conversion to Dalvik format failed: Unable to execute dex”错误,stackoverflow以后得到结果 把项目中classp ...