天天看点

j2ee模型 (抄书)

        J2EE应用模型建立在将工作划分为不同层次的基础上.客户端表达从服务器端逻辑和业务逻辑分理出来.客户端表达以WEB浏览器,applet或者应用程序(application)来呈现;服务器逻辑则通过java script page或servlet的形式来表现;业务逻辑层主要通过数据库或者EJB的方式来体现.J2EE API主要关注的是如何实现各层之间的交互.每一层的接口都是标准化的,使得理解J2EE核心概念的程序员可以把他们的经验应用到各种J2EE项目中去.

        J2EE应用部署的核心是兼容J2EE的应用服务器.应用服务器支持驻留业务逻辑组件和WEB组件,并且可以访问J2EE的所有能力.值得注意的是,J2EE API并没有讲到这些服务器应该如何设计等本质问题,也没有讲到应该如何完成部署,维护和一般性的管理.J2EE关心的重点放在编程的接口和运行时的行为上面.这一特殊性可能会使得原本很熟悉IBM Websphere的系统管理员经验对BEA Weblogic无从下手.虽然管理经验很难在不同的服务器上转移,但是代码却可以很透明的在这些服务器上转移.

        简单的说,J2EE API就是对于J2EE容器或外部企业组件提供某个服务的包装器.一个完整的J2EE环境可能包括一个或多个J2EE服务器,在这些服务器中部署了一个或多个servelet和EJB组件,一个外部事务管理器,一个ORACAL或者DB2关系数据库,以及一个消息中间件系统.整个J2EE平台需要实现以下API:

        Servlet 接口 (java servlet API)

              允许WEB服务器处理HTTP请求,并将内容返回给客户端.Servlet代码在响应请求的过程中也能够使用任何其他J2EE服务.

        JSP 接口(java server pages)

                这些文本包括java代码的片断,并且存储在WEB服务器中.一个典型的JSP由HTTP和嵌入的java代码组成,根据应用的需求定制显示的内容.当客户请求JSP的时候,服务器将JSP编译成为一个servlet,然后,如果编译好的话,就执行JSP并返回结果.因为JSP比servlet更容易编写和修改,所以经常使用他们来创建基于WEB应用的HTTP用户界面.

        EJB接口(Enterprise javabeans)

                允许创建由服务器管理的分布式对象,表现表示业务数据和应用背后的逻辑.EJB被细分为3类:实体 bean(entity bean)定义的是应用数据结构;会话bean(session bean)提供能够控制实体的其他资源的业务方法;消息驱动bean(messagedriver bean)类似于会话bean,但是他们由来自消息中间件的某个消息触发.EJB标准还包括对事务完整性的支持.管理EJB是J2EE服务器的一项主要职责.

        JNDI(java命名和目录接口)

                为访问目录提供一般性的支持.另外,还为企业目录服务器例如基于LDAP的雇员目录提供一个前端.JNDI在J2EE应用的上下文中用于标识资源,如EJB和数据库连接等.经由JNDI来查找和访问所有外部资源,使应用可以很容易地重新定位和分布.

        Java 邮件接口(javamail API)

                支持常见的点对点电子消息通信.对于所有的现实目标来说,这意味着需要支持INTERNET电子邮件.JavaMail使用通用的体系结构支持可插拔的消息传输和检索系统.Sun公司产品的默认安装支持SMTP,IMAP和POP,以及其他来自的三方的其他可用协议.尽管J2EE环境必须提供一个JavaMail的实现,但是这些环境不必为特殊的传输机制提供任何基础构架. 

        Java消息服务器(Java Message Service  API)

                允许J2EE运用集成面向消息的中间件(MOM)套装软件,例如Sonic公司的SonicMQ以及IBM公司的MQSerise.MOM套装软家允许在应用之间路由消息,提供单纯电子邮件不能提供的消息传递和服务质量保证.

        Java事务接口(Java Transaction API)

                允许应用管理他们自己的事务.Java事务接口支持不同层次上和不同服务器上的不同组件参与到同一个事务中来.

        J2EE标准还有一些额外的特性和需求,例如它将互操作委托给CORBA的分布式对象.此外,它要求支持全部的J2SE API集合,包括为数据访问提供JDBC API.最终,它提供了一个标准的,基于XML的部署描述文件系统,使用这些部署描述文件来描述J2EE应用的结构,特别是那些EJB组件和WEB应用的结构,可以更快速的实现部署.

继续阅读