Java本纪之J2EE五年: 从起源到目的

2016-02-19 14:31 4 1 收藏

生活已是百般艰难,为何不努力一点。下面图老师就给大家分享Java本纪之J2EE五年: 从起源到目的,希望可以让热爱学习的朋友们体会到设计的小小的乐趣。

【 tulaoshi.com - 编程语言 】

    起点
  

  在“J2EE”这个缩略语被第一次介绍给世人的时刻,也许没有几个人可以预料出它在日后的奇异历程。那是在1999年6月的JavaOne年会上,时任Sun公司Java企业开发部门主管的Mala Chandra兴奋地预告了Java世界的这位新成员。!-- frame contents -- !-- /frame contents --那些不熟悉背景的听众们,揣摩着她演说中出现的一串串全新术语,表情大概又是惊喜、又是迷惑:一个完整的“多层企业开发架构”、以“容器”和“组件”的形式提供服务、一套“厂商中立的开放技术规范”、对开发者隐藏了不同平台和“中间件”的技术细节、实现了企业级应用间的“无缝集成”等等。在今天的开发者看来,这些似乎都已经是老生常谈,但在当时的场景下,闪动在幻灯片上的每一个口号,都意味着听众们事后又要经历一段困难的学习过程。
  
  幸亏Chandra有一副了不起的口才;这位本科念建筑学的印度裔高层主管,谈起软件架构来也有特强的空间想象力。她清楚地说明了设计J2EE架构的两个初衷:首先,对于厂商,J2EE意味着一套开放标准,加入这个标准,他们的产品就可以运行在各种不同的操作系统和工作环境下,成为一个成熟的企业运算体系中可替换的部件;其次,对于开发者,J2EE是一套现成的解决方案,采用这个方案,企业应用开发中的很多技术难题(包括跨平台移植、事务处理、安全性等等)就会迎刃而解,“信息像一条不间断的河流,经过各种各样的平台和设备,从企业应用系统的这一端流向那一端”。
  
  要想理解这段话在当时的实际效应,我们仍然要把时间指针拨回1999年。除了预备迎接千年虫之外,99年你做了什么?为了回答这个犀利的问题,我翻出6年前的工作记录,发现了自己那时参与的一个项目的规格说明书,它正好能提供一幅“Java企业开发”在1999年的标准照。这是一家日本知名IT厂商的企业信息治理系统,运行在NetScape 3.0 Gold浏览器中的Java Applet界面,通过一个专用的中间层系统与Oracle 8数据库连接。这个中间层已经相当现成、完善,能够提供远程对象调用、事务处理等一系列的底层服务;留给我们的任务只是完成服务器端业务对象代码,以及相应的客户端交互开发。
  
  除了Applet客户端有些非凡之外,上述系统与今天常见的J2EE架构很接近;尤其是业务对象编码也由home类、PK(主键)类、entity类等部分构成,很多机制都与EJB如出一辙——只不过这些类并没有继续javax.ejb包的接口,而是采用了专用的API。它与EJB之间的相似不像是偶然的,设计者肯定参照了Sun在1997年底推出的EJB 1.0技术规范。
  
  换言之,在J2EE诞生伊始的语境中,市面上已经存在着很多程度不一的“准J2EE中间件”了。它们主要用于解决三大类问题:事务处理、分布式对象治理和Web请求处理。首先,事务处理治理器(Transaction Processing Monitor)一直是高端企业计算领域的热门产品,闻名的应用服务器厂商BEA,正是通过收购事务处理软件Tuxedo进入中间件市场的。另一方面,从90年代初开始,越来越多的人把“N层分布式对象架构” 当成传统的客户端/服务器架构的替代方案。那时刚刚兴起的CORBA技术是推动这一趋势的重要力量(比如说,前面提到的那个由日本厂商自行开发的专用中间层,就采用了CORBA作为基础架构)。最后,Java技术在Web领域中的应用也是当时初露头角的热点。1997年6月,Sun在发布一款“Java Web Server”的同时第一次公布了Servlet API;没想到这项技术副产品(连同1998年问世的jsp)正好迎合了厂商的战略需要。对于上面提到的N层架构来说,HTTP服务是一个非常理想的前端;所以基于Java的Web引擎,也在此时成了企业级Java解决方案的一个必不可少的部分。
  
  Java、Web、事务、分布式对象,这几股开发潮流汇合在一处,形成了当时最热门的产品“应用服务器(Application Server)”或“中间件(Middleware)”。为了给定语“最热门”作个注释,我们可以参照一下BEA公司在1998年收购Web应用服务器厂商Weblogic的成交价:1.92亿美元。而这并不是一桩孤立的收购,NetScape和Sun也以相近的价格买下了另外两家企业Kiva和NetDynamics。而这也正是J2EE规范出台的背景:几乎所有要厂商都推出了、或是正在赶制自己的应用服务器产品,但这个“应用服务器”究竟应该是什么东西,竞争者们又各有表述、莫衷一是。
  

来源:http://www.tulaoshi.com/n/20160219/1607124.html

延伸阅读
根据要求,写了一篇。我以Windows 为例。 谁能写一个Linux版本的,谢谢。 其实安装他们都很简单,先到 Sun网站或其它网站下载了 J2SE 和 J2EE RI 这两个文件。 下载后,先安装J2SE。 1。双击下载文件,自动解压后安装开始,在选择路径时,我推荐别用它给出的,自己设置一个, 如:我有C,D,E,H,L盘。我就把J2SE 放...
摘要:在这篇文章中,我们将介绍13种J2EE(Java 2平台企业版)的核心技术:JDBC,JNDI,EJBs,RMI,jsp,Java servlets,XML,JMS,Java IDL,JTS,JTA,JavaMail和JAF。为了更好地说明这些技术在实际中的应用,本文将通过BEA System的WebLogic Server来介绍。 Java起初是运用在浏览器和客户计算机上的,当时,很多人都怀疑它是否适合用作...
Borland公司推出JBuilder 7后,引起了很多Java爱好者的关注。本文就是笔者根据自己经验编写的在JBuilder7下配置Weblogic Server7.0。希望通过此文,大家能顺利地搭建一个比较普遍流行的J2EE环境,并学会开发基本的EJB程序。 创建一个Weblogic Server域 本文假设已经正确安装了JBuilder7和Weblogic Server7.0...
作为轻量级的容器,Spring常常被认为是EJB的替代品。我们也相信,对于很多 (不一定是绝大多数)应用和用例,相对于通过EJB容器来实现相同的功能而言, Sping作为容器,加上它在事务,ORM和JDBC存取这些领域中丰富的功能支持, Spring的确是更好的选择。 不过,需要特别注意的是,使用了Spring并不是说我们就不能用EJB了, 实际上...
J2EE,作为开发mission-critical的企业级应用的一整套规范的整合平台。其规范之多、内容之广,从而给开发J2EE应用带来了很多“麻烦”。 !-- frame contents -- !-- /frame contents -- 比如,为实现内容的RDBMS存储,我们可能的方法有JDBC、Entity Beans、JDO、O/R Mapping工具(TopLink、Hibernate)、XML-DBMS、JAXB等方法(其中...

经验教程

71

收藏

62
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部