j2ee的13种核心技术(2)

分类: J2EE   出处:iocblog整理  更新时间:2008-12-07   添加到收藏  

    jdbc定义了4种不同的驱动程序,现分述如下:
  
    类型 1: jdbc-odbc bridge
  
    在jdbc出现的初期,jdbc-odbc桥显然是非常有实用意义的,通过jdbc-odbc桥,开发人员可以使用jdbc来存取odbc数据源。不足的是,他需要在客户端安装odbc驱动程序,换句话说,必须安装microsoft 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
  
    第4种类型通过使用一个纯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[] )
  {
  try
  {
  class.forname("com.cloudscape.core.jdbcdriver");
  connection conn = drivermanager.getconnection("jdbc:cloudscape:phonebook");
  statement stmt = conn.createstatement();
  string sql = "select name, phone from contact_table order by name";
  resultset resultset = stmt.executequery( sql );
  
  string name;
  string phone;
  while ( resultset.next() )
  {
  name = resultset.getstring(1).trim();
  phone = resultset.getstring(2).trim();
  system.out.println( name + ", " + phone );
  }
  }
  catch ( exception e )
  {
  // handle exception here
  e.printstacktrace();
  }
  }
  }
  
  
    ok。接着我们来看一看jdbc是如何在企业应用中的进行使用。
  
    jdbc在企业级应用中的应用
  
    以上实例其实是很基本的,可能有些微不足道。它假定了一个2层结构。在一个多层的企业级应用中,更大的可能是在客户端和一个ejb进行通信,该ejb将建立数据库连接。为了实现和改进可伸缩性和系统性能, weblogic服务器提供了对连接缓冲池connection pool的支持。
  
    connection pool减少了建立和释放数(来源www.iocblog.net)

上一页 [1] [2]


Tag: 核心技术



文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。