开发者社区> 嗯哼9925> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

《J2EE Tutorial中文版》读书笔记(1)

简介:
+关注继续查看
我看的是第一版,针对j2ee1.3的,新版的图书馆也有,但太厚了,看起来有点怕,还是从这本小书开始吧。
6-25-7.JPG
序言部分介绍了书中的主要内容:
 
Enterprise JavaBean
 Java Servlet 
 JavaServer Pages 
 Java Message Service (JMS,Java消息服务) 
 Java Naming and Directory Interface (JNDI,Java名字与目录接口) 
 XML 
 J2EE Connector Architecture (J2EE连接器架构) 
 JavaMail 
 JDBC
 
为了缩减开发成本,快速跟踪企业应用的设计和开发,J2EE技术提供了基于组件的设计方法,开发、集成、部署应用程序。J2EE平台提供了多层分布式应用模式,使具有重用的能力,并集成了基于XML的数据交换——一个统一的安全模式及灵活的事务控制。
J2EE平台使用多层分布式的应用模式。应用逻辑根据其功能分成多个组件,各种不同的应用组件构成分布在不同的依赖于层的机器上的J2EE程序。下面列出了位于不同层的组件

 运行在客户机上的客户层组件

 运行在J2EE服务器上的Web层

 运行在J2EE服务器上的业务逻辑层

 运行在EIS服务器上的企业信息层

尽管J2EE应用程序可以由三层或四层构成,J2EE应用程序通常由三层构成,因为他们分布于三个不同的位置:客户及,服务器,后台数据库服务器。通过这种方式运行的三层应用模式拓展了基于客户/服务的两层模式。

J2EE应用程序由组件构成。一个J2EE组件是自包含的,与其相关的语气它组件通信的类及文件集成到J2EE应用程序的功能软件单元。J2EE规范定义了下面一些组件:

 运行在客户端的应用客户程序及小程序。

 运行于服务器Web层的Servlet&Jsp组件。

 运行于服务端的企业业务逻辑组件——EJB。

J2EE组件用Java语言编写,通过相同的方法编译。J2EE组件与标准Java类的不同之处在于J2EE组件集成到了应用程序中,与J2EE规范兼容,并部署到负责运行、管理的J2EE服务器上。J2EE客户端可以使网络浏览器也可以是桌面应用程序。业务逻辑代码是解决、达到特定业务领域的需求,如银行、零售、金融,又EJB处理的业务逻辑层。

 企业Bean可以重新从存储器找回数据,如果必要并处理它,然后发送到客户程序。总共有三种EJB:会话bean,实体bean,消息驱动bean。会话bean代表短暂的与客户的会话,当客户结束执行时,会话bean及它的数据就消失了。与会话bean相比,实体bean代表存储在数据库的表,如果客户结束程序或服务器关闭,潜在的服务方法会将数据存储。

    基于组件和平台独立的J2EE平台使J2EE应用程序容易开发,因为商业逻辑被封装在可重用的组件(EJB)中。另外J2EE服务器以容器的形式为所有组件提供底层服务,因此你不必再为这些底层服务二伤脑筋,而可以专注于解决商业问题。

容器(Container)是组件和支持组件功能的底层特定平台(如数据库)之间的接口。在运行Web组件、企业Bean或者J2EE应用程序客户端之前,你必须将它们装配到一个J2EE应用程序中,并部署它们到容器中。

装配的过程包括为J2EE应用程序的每个组件 和J2EE应用程序本身设置容器的配置信息。这些配置信息定制J2EE服务器支持的底层服务,包括安全,事务管理,Java命名和目录接口(JNDI)查找和远程连接等。下面使这些服务的精简描述:

 J2EE安全模型让你配置Web组件或者企业Bean以使系统资源只被授权用户访问

 J2EE事务模型让你指定属于同一个事务的多个方法以使这些方法作为一个原子操作被执行

 JNDI查找服务为企业应用中的多种命名和目录服务提供统一接口使应用程序组件可以统一访问这些命名和目录服务。

 J2EE远程连接模型管理客户端和企业Bean之间的底层通信。企业Bean被创建后,客户端调用它的方法就像在本地虚拟机中的调用一样。

事实上,J2EE体系结构提供可配置服务意味着同一个J2EE应用程序中的组件可以根据不同的部署环境而有不同的行为。例如,一个企业Bean的安全配置可以使它在一种产品环境中有一个级别的数据库数据访问权限,而在另一种产品环境中有不同的数据库数据访问权限。

容器也管理着很多不可配置的服务,如企业Bean和Servlet的生命周期,数据库连接池,数据持久化机制和J2EE平台API的访问权等等。尽管数据持久化机制是不可配置服务,但是J2EE体系结构允许你忽略容器管理的持久性(Container-Managed Persistence,CMP)机制在企业Bean实现中加入合适的代码,当然除非你确实需要比容器管理持久性机制提供的更多的应用程序控制权,否则使用容器管理的持久性。例如你可以用Bean管理的持久性(Bean-Managed Persistence,BMP)机制来实现自己的查找方法或者创建一个定制的数据库缓冲池。

 6-22-1.GIF

J2EE server(J2EE服务器)

J2EE产品的运行时服务部分。一个J2EE服务器提供EJB容器(EJB Container)和Web容器(Web Container)。

EJB容器

管理J2EE应用程序中企业Bean的运行。企业Bean和它们的容器在J2EE服务其中运行。

Web容器

管理J2EE应用程序中JSP页面和Servlet组件的运行。Web组件和容器也在J2EE服务其中运行。

Application client container(应用程序客户端容器)

管理应用程序客户端组件的运行。应用程序客户端和它的容器运行在客户机。

Applet container(Applet容器)

管理Applet的运行。由在客户端运行的浏览器和Java插件组成。

J2EE应用程序和它的所有模块都被打包到一个EAR(Enterprise Archive)文件中。EAR文件是后缀为.ear的标准JAR(Java Archive)文件。(在J2EE SDK提供的GUI版的应用程序部署工具中,需要先创建一个EAR文件然后将JAR和WAR(Web Archive)文件加到EAR中。而命令版本的部署工具正好相反。)下面是这些打包文件的描述:

 EJB JAR文件包含一个部署描述符文件,企业Bean文件和用到的其他文件

 应用程序客户端JAR文件包含一个部署描述符文件,客户端类文件和其他用到的文件

 WAR文件包含一个部署描述符文件,Web组件(JSP和Servlet)文件和用到的其他文件

使用模块和EAR文件的打包方式,使用相同的组件装配成不同的应用程序成为可能,而且不需要额外的编码,只需要将用到的J2EE模块的任意组合装配成一个J2EE EAR文件。

 

本文转自Phinecos(洞庭散人)博客园博客,原文链接:http://www.cnblogs.com/phinecos/archive/2006/06/22/433063.html,如需转载请自行联系原作者
 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Spring Cloud Ribbon 全解 (3) - 基本组件实现源码(1)
Spring Cloud Ribbon 全解 (3) - 基本组件实现源码(1)
12 0
IDEA 2021 Spring Cloud 项目搭建 步骤演示 图文解说 (基础版)(二)
IDEA 2021 Spring Cloud 项目搭建 步骤演示 图文解说 (基础版)
70 0
Google Earth Engine ——数据全解析专辑(世界第 4 版网格化人口 (GPWv4) 修订版30 弧秒1公里格网)人口数量和密度数据集
Google Earth Engine ——数据全解析专辑(世界第 4 版网格化人口 (GPWv4) 修订版30 弧秒1公里格网)人口数量和密度数据集
33 0
在本地wubantu系统搭建spring cloud微服务环境的完整实现
在本地wubantu系统搭建spring cloud微服务环境的完整实现
43 0
Tutorial 8 TLM2.0-lab2
1、Response Status of the Generic Payload默认的响应状态属性是:TLM_INCOMPLETE_RESPONSE;意味transaction没有抵达target。如果执行成功,target会设置属性为:TLM_OK_RESPONSE。TLM_ADDRESS_ERROR_RESPONSE:地址越界错误TLM_BYTE_ENABLE_ERROR_RESPONSE:b
69 0
重磅下载!《云原生数据仓库AnalyticDB MySQL版技术白皮书》
⁣⁣⁣《云原生数据仓库AnalyticDB MySQL版技术白皮书》现已开放下载啦,即刻收藏阅读吧!
4870 0
springcloud(九):配置中心和消息总线(配置中心终结版)
我们在springcloud(七):配置中心svn示例和refresh中讲到,如果需要客户端获取到最新的配置信息需要执行refresh,我们可以利用webhook的机制每次提交代码发送请求来刷新客户端,当客户端越来越多的时候,需要每个客户端都执行一遍,这种方案就不太适合了。使用Spring Cloud Bus可以完美解决这一问题。 Spring Cloud Bus S
2123 0
VMware 11.0 简体中文版|附永久密钥
20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送) 国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。
955 0
C#读书笔记(基本篇)
  2010-06-13 12:37:24   来源:源码之家 站长整理    【大 中 小】   浏览: 1232 次 C# 的数据类型分为:值类型和引用类型 值类型: 变量:从用户角度,变量是存储信息的基本单元。
683 0
+关注
4715
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载