java ee技术调查报告.doc_第1页
java ee技术调查报告.doc_第2页
java ee技术调查报告.doc_第3页
java ee技术调查报告.doc_第4页
java ee技术调查报告.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

技术一Weblogic服务器特点:Java EE提供了一个框架(一套标准API)用于开发分布式结构的应用,这个框架的实际实现留给了第三方厂商。部分厂商只是专注于整个Java EE架构中的的特定组件,如Apache的Tomcat提供了对JSP和Servlet的支持,BEA系统公司则通过其WebLogic应用服务器产品为整个Java EE规范提供了一个较为完整的实现。WebLogic服务器已使建立和部署伸缩性较好的分布式应用的过程大为简化。WebLogic和Java EE代你处理了大量常规的编程任务,包括提供事务服务、安全领域、可靠的消息、名字和目录服务、数据库访问和连接池、线程池、负载平衡和容错处理等。通过以一种标准、易用的方式提供这些公共服务,象WebLogic服务器这样的产品造就了具有更好伸缩性和可维护性的应用系统,使其为大量的用户提供了增长的可用性。功能:1 在使用IP地址的一台计算机,或在使用集群捆绑在一起的多台计算机上,或在通过代理服务器管理的多台计算机上建立拥有相同域名的不同站点。2 部署基于J2EE 标准编写的服务器JAVA代码,包括servlet,JSP,JavaBean 和EJB。3 使用J2EE 扩展网络服务集成分布式系统,包括用于数据库连接的JDBC、用于信息传递的JMS、用于网络目录访问的JNDI、用于分布式事务处理的 JTA 和用于电子邮件处理的JavaMail。4 部署使用远程方法调用(RMI)的纯Java 分布式应用程序。5 通过使用RMIIIOP(RMI over Internet Inter-ORB Protocol)协议部署近似CORBA的分布式应用系统。6 通过使用安全套接层(SSL)和Weblogic的内在支持为用户验证和授权,实现强大的安全性。7 通过将多个Weblogic服务器组成一个集群提供高可用性、负载均衡和容错能力。8 利用Java 的多平台能力在Windows NT/2000,Sun Solairs ,HP/UX 和其他Weblogic支持的操作系统上部署Weblogic服务器。9 在任一平台上,通过使用WebLogic直观的进行基于Web 的管理和监视工具可在网络上轻松管理一个或多个WebLogic服务器。目前最新的版本是WebLogic Server 12c。技术二.JDBCJDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序。类型1: JDBC-ODBC Bridge 在JDBC出现的初期,JDBC-ODBC桥显然是非常有实用意义的,通过JDBC-ODBC桥,开发人员可用JDBC来存取ODBC数据源。不足的是需要在客户端安装ODBC驱动程序,换句话说,必须安装Windows的某个版本。使用这一类型要牺牲JDBC的平台独立性。另外ODBC驱动程序还需具有客户端控制权限。类型 2:JDBC-native driver bridge JDBC本地驱动程序桥提供了一种JDBC接口,它建立在本地数据库驱动程序的顶层,而不需要ODBC。JDBC驱动程序将对数据库的API从标准的JDBC调用转换为本地调用,使用此类型要牺牲JDBC的平台独立性,还要求在客户端安装客户端数据库驱动程序。类型 3:JDBC-network bridge JDBC网络桥驱动程序不需要客户端数据库驱动程序。它使用网络上的中间件服务器来存取数据库。这种应用使得负载均衡、连接缓冲池和数据缓存等技术的实现有了可能。由于第3种类型往往只需要相对更少的下载时间,具有平台独立性,且不需要在客户端安装数据库驱动程序并取得控制权,所以很适合于Internet上的应用。 类型 4:Pure Java driver 通过使用一个纯Java数据库驱动程序来执行数据库的直接访问。此类型实际上在客户端实现了2层结构。要在N-层结构中应用,一个更好的做法是编写一个EJB,让它包含存取代码并提供一个对客户端具有数据库独立性的服务。WebLogic服务器为一些通常的数据库提供了JDBC驱动程序,包括Oracle、Sybase、Microsoft SQL Server及Informix。它也带有一种JDBC驱动程序用于Cloudscape,这是一种纯Java的DBMS,WebLogic服务器中带有该数据库的评估版本。让我们看一个实例。 JDBC实例 在这个例子中假定已在Cloudscape中建立了一个PhoneBook数据库,且包含一个表名为 CONTACT_TABLE的表,它带有2个字段:NAME和PHONE。开始时先装载Cloudscape JDBC driver,并请求driver manager得到一个对PhoneBook Cloudscape数据库的连接。通过这一连接,可构造一个Statement对象并用它来执行一个简单的SQL查询。最后用循环来遍历结果集的所有数据,并用标准输出将NAME和PHONE字段的内容进行输出。import java.sql.*;public class JDBCExample public static void main(String args) tryClass.forName(COM.cloudscape.core.JDBCDriver);Connection conn = DriverManager.getConnection(jdbc:cloudscape honeBook);Statement stmt = conn.createStatement();String sql = SELECT name, phone FROM CONTACT_TABLE ORDER BY name;ResultSet resultSet = stmt.executeQuery(sql);String name, phone;while (resultSet.next() name = resultSet.getString(1).trim(); phone = resultSet.getString(2).trim(); System.out.println( name + , + phone ); catch ( Exception e )/ Handle exception heree.printStackTrace(); 接着我们来看一看JDBC是如何在企业应用中的进行使用。 JDBC在企业级应用中的应用 以上实例其实是很基本的,可能有些微不足道,它假定了一个2层结构。在一个多层的企业级应用中,更大的可能是在客户端和一个EJB进行通信,该EJB将建立数据库连接。为了实现和改进可伸缩性和系统性能,WebLogic服务器提供了对连接缓冲池Connection pool的支持。Connection pool减少了建立和释放数据库连接的消耗。在系统启动以后即可建立这样的缓冲池,此后如故再有对数据库的请求,WebLogic服务器可很简单地从缓冲池中取出数据。数据缓冲池可在WebLogic服务器的perties文件中进行定义(可参考perties文件中的例子,WebLogic服务器的文档中还有更详细的参考信息)。在企业级应用的另一个常见的数据库特性是事务处理。事务是一组申明statement,它们必须作为同一个statement来处理以保证数据完整性,缺省情况下JDBC使用auto-commit事务模式。这可以通过使用Connection类的setAutoCommit()方法来实现。技术三:EJBEJB是sun的服务器端组件模型,设计目标与核心应用是部署分布式应用程序。它们提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义了EJB组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务,如目录服务、事务管理、安全性、资源缓冲池及容错性。 EJB规范定义了3中基本的bean类型:会话Bean(Session Bean),实体Bean(Entity Bean)和消息驱动Bean(MessageDriven Bean)。Stateless session beans:提供某种单一服务而不维持任何状态,在服务器故障发生时无法继续存在,生命期相对较短。如它可能被用于执行温度转换计算。Stateful session bean:提供了与客户端的会话交互,可存储状态从而代表一个客户。典型例子是购物车。不过在服务器故障时无法继续生存,生命期相对较短。每一个实例只用于一个单个的线程。Entity beans: 提供了一致性数据的表示,通常存放在数据库中,在服务器故障发生后能继续存在。多用户情况下可使用EJB来表示相同的数据,Entity EJB的一个典型例子是客户的帐号信息。尽管有以上的区别,所有的EJB还是有许多的共同之处。它们都处理home interface。它定义了一个客户端是如何创建与消亡EJB的。可在bean中对定义了客户端方法的远程接口进行调用;bean类则执行了主要的商务逻辑。描述EJB的开发已经超出了本文的范围。但如果一个EJB已被开发或从第三方购买,它就须在应用服务器中进行发布。WebLogic Server 5.1带有一个EJB Deployer Tool来协助处理EJB的发布。当你使用EJB Deployer Tool的时候,你要定义客户端所用的JNDI名字来定位EJB。Deployer Tool将生成wrapper类来处理和容器的通信及在一个jar文件中把被请求的Java类绑定在一起。 一旦EJB被发布,客户端就可以使用它的JNDI名字来定位EJB。首先它必须得到一个到home接口的reference。然后客户端可使用该接口,调用一个create()方法来得到服务器上运行的某个bean实例的句柄;最后客户端可以使用该句柄在bean中调用方法。EJB3.0在EJB3.0规范中,写一个无状态会话bean(SLSB)只需要一个简单的Java文件并在类层加上Stateless注释就可以了。这个bean可以扩展javax.ejb.SessionBean接口,但这些不是必须的。一个SLSB不再需要home接口,没有哪类EJB再需要它了。Bean类可以实现业务接口也可以不实现它。如果没有实现任何业务接口,业务接口会由任意public的方法产生。如果只有几个业务方法会被暴露在业务接口中,这些方法可以使用BusinessMethod注释。缺省情况下所有产 生的接口都是local(本地)接口,你也可以使用Remote注释来声明这个接口为remote(远程)接口。下面的几行代码就可以定义一个HelloWorldbean了。而在EJB2.1中同样的bean至少需要两个接口,一个实现类和几个空的实现方法,再加上部署描述符。import javax.ejb.*;/* A stateless session bean requesting that a remote business* interface be generated for it.*/;Stateless;Remotepublic class HelloWorldBean public String sayHello() return Hello World!;EJB3.1 EJB3.1又一次引入了一系列新的特性,倾向于挖掘技术的潜力。依我来看,EJB3.1绝对是一个重要的发布版本,它将那些长期让人渴望的特性带到开发者面前,更加能够满足最新的企业应用程序开发,同时对EJB再次被人们采纳将做出巨大的贡献。EJB 3.1 最终发行版已经发布了。EJB3.1架构模式相对于旧的架构模式有如下的一些扩展和针对API的一些简化: 简化的本地模式让去除了本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论