WEB开发网
开发学院数据库MSSQL Server 用SQLJ开发数据库 阅读

用SQLJ开发数据库

 2007-11-11 04:17:57 来源:WEB开发网   
核心提示:SQLJ的概述今天的企业级应用程序通常运行在多数据库平台上,例如Oracle(大型网站数据库平台)、DB2、Sybase、sql server(WINDOWS平台上强大的数据库平台)、Informix等等,用SQLJ开发数据库,在这个环境里,代码的可移殖性和可维护性正变得越来越重要,包括Oracle(大型网站数据库平台

SQLJ的概述

  今天的企业级应用程序通常运行在多数据库平台上,例如Oracle(大型网站数据库平台)、DB2、Sybase、sql server(WINDOWS平台上强大的数据库平台)、Informix等等。在这个环境里,代码的可移殖性和可维护性正变得越来越重要。从一个数据库平台到另一个数据库平台移植代码是非常复杂的并且要花费大量时间,因为数据库供应厂商都使用他们自己专有的过程语言(例如Oracle(大型网站数据库平台)使用PL/SQL,而Sybase和sql server(WINDOWS平台上强大的数据库平台)使用Transact - SQL)。

近几年来,Oracle(大型网站数据库平台)开发人员都一直在使用PL/SQL|(一种提供了到关系数据库语言SQL的过程扩展部分的语言)来构建管理大量的数据阵列的复杂系统。不幸的是,用PL/SQL写的存储过程只能在Oracle(大型网站数据库平台)数据库运行。但是SQL开发者有了一种写代码的强有力的工具,可以很容易的移植到其他的数据库-这就是Java,因为它在跨平台开发和国际互联网络上的强大功能是它成为流行的开发语言。Java承诺的统一的、可移植的应用软件开发解决办法可以在简单的、低成本的的IT基本设施上执行,所以主要的开发工具供应厂商和设备供应者都支持Java。居于领导地位的软件供应厂商,例如Oracle(大型网站数据库平台)和IBM,都在他们的数据库和其他的应用程序平台上整合了Java虚拟机(JVM)。Oracle(大型网站数据库平台)数据库管理系统公司在Oracle(大型网站数据库平台) 8i中引入了对Java的扩展支持功能。在Oracle(大型网站数据库平台)中,有两种使用Java的基本方法:

  JDBC :就像ODBC一样,它提供了一个基于驱动程序的接口,允许从Java应用程序中访问Oracle(大型网站数据库平台)数据库。

  SQLJ :这是多个厂商共同努力的结果,是一种新的语言,能提供在Java代码中静态SQL的支持。理论上,它提供了比JDBC更大程度的程序员劳动生产率。

  在Oracle(大型网站数据库平台) 8i数据库服务器里集成JVM是在最近几年中Oracle(大型网站数据库平台)引进的最重要的技术革新之一。集成JVM的Oracle(大型网站数据库平台),叫做JServer(亦称Aurora JVM), 支持两种不同的程序设计模型∶

  和SQL集成,允许用户使用Java编写传统的数据库存储过程、函数和触发器。

  用于分布式Java组件的事务服务器平台,称作企业JavaBeans,允许程序员开发可重复使用的服务器端应用程序组件。

  在本文中,我主要讲述一下在Oracle(大型网站数据库平台) 8i中SQL和Java集成。也就是说, Java可以调用SQL和PL/SQL,PL/SQL和SQL也可以调用Java。Java程序调用它们使用JDBC驱动程序的SQL和PL/SQL复本,而JDBC驱动程序是嵌入驻留在Oracle(大型网站数据库平台) 8i数据库中的JVM体系结构中的。另一方面,从SQL和PL/SQL到Java,Oracle(大型网站数据库平台) 8i提供了二个特色。在Oracle(大型网站数据库平台) 8i中,Java名称空间映射到数据库模式,易于从属物允许Java被保存在数据库中。Oracle(大型网站数据库平台) 8i也提供扩展的Data Definition Language(数据定义语言DDL),例如CREATE PROCEDURE AS JAVA命令,因此Java代码很容易内嵌入Oracle(大型网站数据库平台) 8i中。

  SQLJ是什么?

  SQLJ是一种允许把静态的 SQL语句以文本形式嵌入Java程序中的语言。在写一个SQLJ应用程序时,我们编写一段Java程序然后遵循某些特定的标准法则把SQL语句嵌入在其中,这些法则定义了SQL语句怎样写入Java程序(具体情况请看Oracle(大型网站数据库平台) 8i SQLJ开发指南与参考,你可以在Documentation Library光盘上找到)。
接下来,我们运行一个SQLJ翻译器,通过把嵌入式结构化查询语句替换为调用调用SQLJ运行时程序库的方式把SQLJ程序转换成一个标准的Java程序。生成的Java程序就可以使用任何标准的Java编译程序(例如javac)来编译了然后就可以配合数据库使用了。SQLJ运行期环境是由一个瘦(即没有额外系统开销)SQLJ运行时程序库组成,也就是说用纯Java实现调用相应的数据库(Oracle(大型网站数据库平台), DB2等等)的JDBC驱动程序。

SQLJ类似于其他的嵌入式结构化查询语言的实现,像Oracle(大型网站数据库平台) Pro * C (嵌入C语言环境的SQL)。SQLJ语言设计的目的就是帮助基于Java的程序员构建数据库应用程序。SQLJ是一个ISO和ANSI标准,也就是说由领头的数据库与软件供应厂商开发和支持的,包括Oracle(大型网站数据库平台)数据库管理系统公司,国际商业机器公司,美国赛贝斯公司, Informix公司,美国康柏公司等。所有这些公司合作开发兼容的SQLJ翻译器来实现使用不同的数据库。

1 2 3 4 5 6  下一页

Tags:SQLJ 开发 数据库

编辑录入:coldstar [复制链接] [打 印]
赞助商链接