JNDI(Java 命名和目录接口)
JNDI(Java 命名和目录接口) 分布式计算环境通常使用命名和目录服务来获取共享的组件和资源。命名和目录服务将名称与位置、服务、信息和资源关联起来。 命名服务提供名称—对象的映射。目录服务提供有关对象的信息,并提供定位这些对象所需的搜索工具。有许多命名和目录服务实现,并且到它们的接口是不同的。 Java 命名和目录接口或 JNDI 提供了一个用于访问不同的命名和目录服务的公共接口。请参阅 URL java.sun.com/prodUCts/jndi/serviceproviders.Html 以获取支持通过 JNDI 接口访问命名和目录服务的供给商列表。 JNDI(Java Naming and Directory Interface) 当你在开发企业beans时,JNDI很重要,因为对一个EJB的访问是通过JNDI的命名服务完成的。运用一个命名服务来查找与一个特定名字相关的一个对象。在EJB context中,一个命名服务找到一个企业bean,给定这个bean的名字。因此,了解JNDI在开发一个EJB应用程序中是至关重要的。另外,JDBC可以用JNDI来访问一个关系数据库。 附:The JNDI Tutorial http://java.sun.com/products/jndi/tutorial/index.HTML (下载) http://java.sun.com/products/jndi/docs.HTML#TUTORIAL
JDBC2.0扩展API
JDBC 2.0 API被划分为两部分:JDBC 2.0核心API和JDBC 2.0标准扩展API。核心API在java.sql里面。这是原来的版本就实现了的基本的功能。标准扩展API在javax.sql里面。由JDBC2.0规范新规定的一些接口在这里面。当然,JDBC2.0也对原来版本的java.sql核心做了一些改动。不过不是很大。原来JDBC1.0的程序可以不加修改的在JDBC2.0上运行。这是Java的一贯的良好的作风。最新的JDBC包可以从sun公司的网站上下载。 JDBC2.0的扩展API增加了一些数据访问和数据源访问的重大的功能。这中间有一些是主要用来做企业计算的。用JDBC2.0的新的扩展包,JDBC提供了一个从JAVA2平台的通用的数据访问的方法。 首先,我们来看看JDBC标准扩展的API怎样来和JDBC2.0结合在一起的。JDBC2.0包括两个包: 1、 java.sql包,个包里面是JDBC2.0的核心API。它包括了原来的JDBC API(JDBC 1.0版本),再加上一些新的2.0版本的API。这个包在Java 2 Platform SDK里面有。 2、 javax.sql包,这里面是JDBC2.0的标准扩展API。这个包是一个全新的,在Java 2 Platform SDK, Enterprise Edition里面单独提供。 JDBC2.0的核心API包括了JDBC1.0的API,并在此基础上增加了一些功能,对某些性能做了增强。使java语言在数据库计算的前端提供了统一的数据访问方法,效率也得到了提高。 JDBC是向后兼容的,JDBC1.0的程序可以不加修改的运行在JDBC2.0上。但是,假如程序中用到了JDBC2.0的新特性,就必须要运行在JDBC2.0版本上。 概括的来说,JDBC核心API的新特性在两个方面做了工作。一个是支持一些新的功能,另一个就是支持SQL3的数据类型。 1、 在支持新功能方面:包括结果集可以向后滚动,批量的更新数据。另外,还提供了UNICODE字符集的字符流操作。 2、 在支持SQL3的数据类型方面:包括新的SQL3数据类型,增加了对持久性对象的存贮。 为了对数据的存取,操作更加方便,JDBC的新特性是应用程序的设计更轻易了。例如:数据块的操作能够显著的提高数据库访问的性能。新增加的BLOB, CLOB,和数组接口能够是应用程序操作大块的数据类型,而不必客户端在存贮之前进行其它的处理。这样,就显著的提高了内存的使用效率。 下面我们来介绍JDBC2.0的标准扩展API。标准扩展API分为如下几个方面: 1、 DataSource接口:和Java名字目录服务(JNDI)一起工作的数据源接口。它提供了对数 吹囊恢指玫牧臃椒ā?br>2、 Connection pooling(连接池):可以重复使用连接,而不是对每个请求都使用一个新的连接。 3、 Distrubute transaction(分布式的事务):在一个事务中涉及到了多个数据库服务器。