(转)J2EE十三个技术规范
从事Java开发的童鞋都知道,java是一种非常棒的语言,能够实现跨平台运行。它屏蔽了具体的平台环境的要求,也就是说,无论是windows,还是Unix、Linux系统,只要支持Java虚拟机,就可以运行Java程序。
下面,我们就一起来学习J2EE的十三个技术规范。

J2EE体系结构:

一、JDBC:Java Data Base Connectivity,数据库连接
我们大家对微软公司的ODBC数据库访问接口比较熟悉,而在Java中创建数据库连接使用的是JDBC。学习的过程中,我们会发现:其实,JDBC和ODBC使用方法很相似,JDBC甚至比ODBC更加好用。这是因为JDBC是在ODBC的基础上发展起来的,集成了ODBC很多优点,同时它也是独立于平台的。
二、JNDI:Java Naming and Directory Interfaces,Java命名和目录接口
JNDI是一个Java应用程序设计接口,它为我们提供了查找和访问各种命名和目录服务的通用、统一方式。JNDI避免了程序与数据库之间的紧耦合,使应用更加易于配置,便于部署。
有了JNDI,我们就不要关心“具体的数据库后台是什么?JDBC驱动程序是什么?JDBC URL格式是什么?访问数据库的用户名和密码是什么?”这些问题了。我们编写的程序不用关心对JDBC驱动的引用。我们只需要在J2EE容器中定义一个数据源,然后通过这个数据源访问后台数据库。
参考:http://blog.csdn.net/zhaosg198312/article/details/3979435
三、EJB:Enterprise Java Beans,企业级Java Beans
EJB是实现分布式业务逻辑的Java组件。它以一个标准自动处理了如数据持久化、事务集成、安全对策等问题,为后台业务提供了一个标准方式。
EJB规范讨论了四中对象类型:无状态会话bean、有状态会话bean、实体bean、消息驱动bean。
Stateless Session Beans是一类不包含状态信息的分布式对象,允许来自多个客户端的并发访问。无状态回话Bean没有资源集约性,访问的实例变量内容页不会被保存。举个例子:一个发送邮件的EJB就可以设计为一个无状态回话Bean。整个会话期,用户指向服务器提交一个动作:发送指定邮件到我的地址。
Stateful Session Beans是包含状态的实例对象。比如在淘宝买完东西结账时,就需要一个有状态会话bean,因为服务器必须随时了解用户进行到了哪一步。尽管有状态会话bean可以被保存,但始终只能同时由一个用户来访问。
Entity Beans用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个Entity Bean对象,相当于新建一条记录,删除一个Entity Bean会同时从数据库中删除对应记录,修改时,容器会自动将Entity Bean的状态和数据库同步。
MessageDrven Bean支持异步行为的分布式对象。消息驱动Bean的示例有监控应用错误队列并向email寻呼机发送非常要重错误的EJB;处理servlet发回的网站反馈信息的EJB;打印从订单队列到仓库打印机的订单EJB……
四、RMI:Remote Method Invocation,远程方法调用
RMI是一种机制,能够让在某个Java虚拟机上的对象调用另一个Java虚拟机中的对象上的方法,它使得客户机上运行的程序可以调用远程服务器上的对象。
参考:http://www.cnblogs.com/ninahan0419/archive/2009/06/25/javarmi.html#top
五、Java IDL/CORBA:Java Interface Definiyion Language/Common Object Request Broker Architecture ,Java接口定义语言/公用对象请求代理程序体系结构
CORBA是一个分布式的面向对象应用架构规范,定义了分布式对象如何实现互操作。CORBA对象的接口使用IDL语言来定义。对象的接口定义了对象的类型,对象的方法和引用参数以及对象方法可能返回的异常结果。
六、JSP:Java Server Pages
JSP页面有HTML代码和嵌入其中的Java代码组成。它将网页逻辑与网页设计显示分离,支持可重用的基于组件的设计,是的java开发快速、容易。JSP是一种动态页面技术,它主要目的是将表示逻辑从Servlet中分离出来。
七、Servlet
Servlet是服务端的Java应用程序,可以生成动态的页面,在客户端Session中保存客户的数据。它定义了动态生成HTML、XML或其他格式文档的Web网页的技术标准。JSP以Java语言作为脚本语言,将java代码和特定的预定义动作嵌入到静态页面中。
下面是Serlvet八大内置对象:

八、XML:Extensible Markup Language,可扩展标记语言
在学习donet时,我们就学习过XML。它是一种与平台无关的通用数据交换格式。所以说,XML与跨平台运行的Java结合,绝对件完美的事情。
九、JMS:Java Message Service,Java消息服务
JMS是java平台上有关面向消息中间件的技术规范。
JMS对象模型包含六个要素:连接工厂、JMS连接、JMS会话、JMS目的、JMS生产者和消费者、JMS消息类型(点对点、发布/订阅)。

连接工厂:由管理员创建,绑定到JNDI树种。客户端使用JNDI查找连接工厂,然后利用连接工厂创建一个JMS连接。
JMS连接:JMS会话表示JMS客户与JMS服务器之间的会话状态。JMS会话建立在JMS连接上,表示客户与服务器之间的一个会话线程。
JMS目的:消息队列,是实际的消息源。
生产者和消费者:由Session对象创建,用于发送和接受消息。
点对点消息类型:消息发送给一个单独的使用者。
发布/订阅消息类型:支持一个事件驱动模型,生产者和消费者都残余消息的传递。
十、JTA:Java Transaction API,Java事务API
JTA允许应用程序执行分布式事务处理,在多个网络计算机资源上访问并且更新数据,极大地增强了数据访问能力。
十一、JTS:Java Transaction Service,Java事务服务
JTS是一个组件事务监视器。JTS和JTA为J2EE提供了分布式事务服务。
十二、JavaMail
为我们提供了电子邮件的开发接口。它可以方便的执行一些常用的邮件传输。JavaMail包中用于处理电子邮件的核心类是:Session,Message,Address,Authenticator,Transport,Store,Folder等。Session定义了一个基本的邮件会话,它需要从Properties中读取类似于邮件服务器,用户名和密码等信息。
十三、JAF:JavaBeans Activation Framework,JavaBeans活动框架
JAF是一个专用的数据处理框架,它用于封装数据,并为应用程序访问和操作数据的接口。JFA主要作用在于让Java应用层序知道如何对一个数据源进行查看、编辑和打印等操作。
应用程序通过JAF提供的接口可以完成:访问数据源中的数据、获取数据源数据类型、获知可对数据进行的操作、用户执行操作时,自动创建该操作的软件部件的实例对象。
总结
刚刚看完视频,对于很多规范都非常陌生,这些在日后的学习中慢慢深入。以后就要开始Java学习之旅了,学好规范非常重要。
(转)J2EE十三个技术规范的更多相关文章
- J2EE十三个技术规范
从事Java开发的童鞋都知道,java是一种非常棒的语言,能够实现跨平台运行.它屏蔽了具体的平台环境的要求,也就是说,无论是windows,还是Unix.Linux系统,只要支持Java虚拟机,就可以 ...
- J2EE十三种技术规范介绍
J2EE的十三个技术规范 J2EE体系结构 一.JDBC:Java Data Base Connectivity,数据库连接 我们大家对微软公司的ODBC数据库访问接口比较熟悉,而在Java中创建数据 ...
- javaEE的十三个技术规范
java 是一种非常棒的语言,健壮,跨平台运行,屏蔽了具体的平台环境的要求,也就是说只要支持java 虚拟机,就可以运行java程序. 下面,我们一起学习一下J2EE的十三种技术规范. 一.JDBC: ...
- Java EE的十三个技术规范
Java 是一种非常棒的语言,健壮,跨平台运行,屏蔽了具体的平台环境的要求,也就是说只要支持java 虚拟机,就可以运行java程序. 下面,我们一起学习一下J2EE的十三种技术规范. 一.JDBC: ...
- 浅识J2EE十三个规范
前言 没有规矩不成方圆,学习J2EE,先来明白都有什么规范. 内容 1.JDBC(Java Database Connectivity)java数据库连接 a)为java开发人员提供了一个行业标准AP ...
- J2EE十三个规范小结
J2ee是我们步入java学习的一个開始.它将开启这趟奇幻之旅,Java是一种简单的,跨平台的,面向对象的,分布式的.解释的.健壮的安全的.结构的中立的,可移植的.性能非常优异的多线程的,动态的语言. ...
- J2EE 13种技术规范
J2EE平台由一整套服务(种技术规范进行简单的描述(限于篇幅,这里只能进行简单的描述): 1.JDBC(Java Database Connectivity): JDBC API为访问不同的数据 ...
- java-网络通信-索引
HTTP协议 关于HTTP协议,一篇就够了 HTTP与HTTPS的区别 HTTP Keep-Alive模式 HTTP长连接和短连接 HTTP的长连接(持久连接)和短连接 HTTP的长连接 ...
- [Java] javaEE
定义 面向企业级应用中一些通用模块制定的标准 避免重复开发,解决代码可靠性问题 13种规范 JDBC(JavaDatabase Connectivity):数据库连接 以统一方式访问数据库的API J ...
随机推荐
- VS2010属性
基于virtual studio 所有工程属性和 工程属性 这是VS2010的改变,不能够在“工具-选项”中看到“VC++目录”了. 但是呢,我们可以在另外一个地方找到它,请看下边的对比照片. VS ...
- jQueryEasyUI创建菜单主页
function addTab(title,path){ funcTab.tabs('add',{ title: title, fit:true, href:'${ctx}/login/forword ...
- 一个VLAN配置的实际例子
背景很简单,和一般的eth-switch通过VLAN做成路由的方式一样. 首先看一种硬件效率较高的方法: Port1~4作为access口,同时在硬件上作为用户模式,即从PC发往这些端口的数据 ...
- sql的嵌套查询,把一次查询的结果做为表继续进一步查询;内联视图
Mysql的嵌套表查询 嵌套SELECT语句也叫子查询,一个 SELECT 语句的查询结果能够作为另一个语句的输入值.子查询可以: 出现在Where子句中, 出现在from子句中,作为一个临时表使用, ...
- 3D屏保:N皇后
前几天园子里有人发表关于8皇后的算法.只有代码,没有能运行的DEMO多枯燥.于是我这两天抽时间写了个N皇后的屏保程序.程序启动后会从4皇后到14皇后显示其所有排列,每隔0.5秒自动切换一次.按下空格键 ...
- 我所遭遇过的游戏中间件--Havok
我所遭遇过的游戏中间件--Havok Havok是我接触的第一款游戏中间件,那是在五,六年前,我刚刚毕业,对游戏开发还是个菜鸟.我记得先是对游戏场景中的地形和其他静态物体生成刚体,然后做角色的Ragd ...
- 【Todo】React & Nodejs学习 &事件驱动,非阻塞IO & JS知识栈:Node为主,JQuery为辅,Bootstrap & React为辅辅,其他如Angular了解用途即可
JS知识栈:Node为主,JQuery为辅,Bootstrap & React为辅辅,其他如Angular了解用途即可 今天在学习ReactJS和NodeJS,看到关于ReactJS的这篇文章 ...
- 第2章 排序 | 第10节 计数排序练习题 && 基数排序
对于一个int数组,请编写一个计数排序算法,对数组元素排序. 给定一个int数组A及数组的大小n,请返回排序后的数组. 测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5] 计数排序 ...
- 创建spring boot项目启动报错遇到的问题
1.Spring boot,Mybatis 启动报错 Failed to auto-configure a DataSource *************************** APPLICA ...
- git简单运用
创建新仓库 创建新文件夹,打开,然后执行 git init 以创建新的 git 仓库. 检出仓库 执行如下命令以创建一个本地仓库的克隆版本: git clone /path/to/repository ...