前言

               马上就要开始暑期实训了,想着把自己以前学习的东西复习一遍,做一些总结。(以前学习的时

          候,没有做总结真是失误啊)。笔者的方向是java方向的,J2EE无疑是java的精髓。因此最近会抽出些

          时间学习,巩固。对于这个过程,笔者打算从servlet、jsp基础开始。笔者十分赞同“合抱之树始于毫

          末,万丈高楼起于垒土” 。只有基础够扎实,其他框架的学习才能够水到渠成。

               首先笔者对J2EE的十三中框架做一个总结、了解对于学习有一个明确的思路。

       JAVA EE十三中技术框架

               J2EE是一个开放的平台有一整套服务(services)、应用程序接口APIs和协议组成,它对开发基于

         web的多层应用提供了功能、技术支持。主要包括十三种核心的技术,除此之外还提供很多流行

         的web框架(struts、hibernate、spring)。这里简要的说明一下其十三种核心技术建立一个整体的概念。

        JAVA数据库连接(JDBC)

               JDBC API以一个统一的方式访问各种数据库。与ODBC类似,它将开发者和私有的数据库之间

            的问题隔离开来了,各个数据库厂商根据java提供的JDBC的标准实现自己的数据库驱动来操作自

            己的数据库产品JDBC是建立在java上的,提供了平台无关的数据库的访问。

               JDBC定义了四种不同的驱动,具体来说有:

              JDBC-ODBC桥接

                  这种方式是在JDBC刚产生时的一种十分有效的访问数据库的方式,开发者通过使用JDBC来

               访问ODBC数据源来操作具体的数据库。缺点也比较明显,就是客户机上必须安装ODBC驱动,

               没有达到平台无关性。

              JDBC-native驱动桥

                  JDBC-native驱动桥提供了一个建筑在本地数据库驱动是哪个的JDBC接口(不使用odbc)。它

              将标准的JDBC调用转换为数据库API的本地调用。这种方式需要安装客户端的本地代码,同时

              失去了平台无关性。

              JDBC-network桥

                 JDBC-network桥不需要客户端的数据库驱动。它们使用网络-服务器中层来访问一个数据库。

             这会引出诸如负载均衡、连接池等技术,数据缓冲也是可能的。这种方式可带来相对小的下载时间,

             平台无关,十分适合Internet的应用,通过网路协议驱动。

             纯JDBC驱动

                 使用纯java数据库驱动来提供直接的数据库访问。这种驱动运行在客户端,并且直接访问数据库,

             这个模式暗示了要使用一个两层的体系。要在一个n层的体系中使用这种驱动,可以通过一个包含

             数据访问代码的EJB,并且让该EJB为它提供一个数据库无关的服务,通过本地协议驱动。   

             JAVA命名和目录接口(Java Naming and Directory Interface,JNDI)

              JNDI是一组在java应用中访问命名和目录服务的API,命名服务将名称和对象关联起来,使我们可

          以用名称访问对象。java应用程序可以和这些命名服务和目录服务之间进行交互。JNDI为开发人员提

          供了一套查找和访问命名服务和目录服务的通用、统一的接口。

                

                对于JNDI到底是什么笔者这里也有些不明了,下去会找些资料说明的。

            企业 Java Beans(Enterprise Java Beans)

                  J2EE技术之所以赢得某体广泛重视的原因之一就是EJB。它们提供了一个框架来开发和实施分

             布式商务逻辑,由此很显著地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义

             了EJB组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事

             务管理、安全性、资源缓冲池以及容错性。但这里值得注意的是,EJB并不是实现J2EE的唯一途径。

             正是由于J2EE的开放性,使得有的厂商能够以一种和EJB平行的方式来达到同样的目的。
                  

                 这个小生同样是云里雾里,不大清楚,完全没用过。现阶段了解就成。  

            Java Servlets

                 Servlets技术提供的大部分功能和JSP是相同的,不过JSP中大部分是HTML代码,而Servlet

             则是完全由java语言编写,并且产生Html代码的。

                 servlet是一个在服务器上运行的一个java小程序,它可以扩展web服务器的功能。这些服务器

             的应用可以在被请求的时候动态执行,与CGI相差不多。区别在于CGI脚本每次请求都启动一个

             全新的进程(占用额外系统开销)而servlet只需在servlet引擎内启动一个独立的线程就ok了,其扩

             展性更好。

                 在笔者接下来的学习中也会先从这部分开始学习。

            Java IDL/CORBA

                  在Java IDL的支持下,开发人员可以将Java和CORBA集成在一起。他们可以创建Java对象并使之

             可在CORBA ORB中展开, 或者他们还可以创建Java类并作为和其它ORB一起展开的CORBA对象的

             客户。后一种方法提供了另外一种途径,通过它Java可以被用于将你的新的应用和旧的系统相集成。 

            Java事务体系(JTA)/Java 事务服务(JTS)

                  JTA定义了一种标准的API,应用系统由此可以访问各种事务监控。

                  JTS是CORBA OTS事务监控的基本的实现。JTS规定了事务管理器的实现方式。该事务管理器

               是在高层支持Java Transaction API (JTA)规范,并且在较底层实现OMG OTS specification的

               Java映像。JTS事务管理器为应用服务器、资源管理器、独立的应用以及通信资源管理器提供

               了事务服务。 

             JavaMail和JavaBeans激活架构(JavaBeans Activation Framework,JAF)

                   JavaMail是用于存取邮件服务器的API,它提供了一套邮件服务器的抽象类。不仅支持SMTP

              服务器,也支持IMAP服务器。 

                   JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流可以被转换成Java对象,

              或者转换自Java对象。大多数应用都可以不需要直接使用JAF。

              Java信使服务(Java Messaging service,JMS)

                  MS是用于和面向消息的中间件相互通信的应用程序接口(API)。它既支持点对点的域,有支持

               发布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型

               消息的传递,一致性消息和具有持久性的订阅者支持。JMS还提供了另一种方式来对您的应用与

               旧的后台系统相集成。 

               XML扩展标记语言

                   XML是一种可以用来定义其它标记语言的语言。它被用来在不同的商务过程中共享数据。XML

                的发展和Java是相互独立的,但是,它和Java具有的相同目标正是平台独立性。通过将Java和

                XML的组合,您可以得到一个完美的具有平台独立性的解决方案。 

               RMI(Remote Method Invoke)

                   正如其名字所表示的那样,RMI协议调用远程对象上方法。它使用了序列化方式在客户端和服务

                器端传递数据。RMI是一种被EJB使用的更底层的协议。 

                JSP(Java Server Pages)

                    JSP全名为java server page,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张

                (以 <%,%>形式)。JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个

                 HTML文本,因此客户 端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先

                 执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java

                 程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。  

                    了解了J2EE的核心技术我们简要的看看J2EE的框架图:

              

                 至于J2EE的一些流行的Web框架(Hibernate、Struts、Spring)会在后续慢慢学习的。