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
翻译器来实现使用不同的数据库。
SQLJ
的优点
一个编译过的
SQLJ
应用程序是一个标准的
Java
程序,可以在任何具备三个组件的环境中运行,这三个组件是:
JVM, SQLJ
运行时程序库和
JDBC
驱动程序。
它提供了下列好处
∶
紧凑的代码
SQLJ
代码比
JDBC
代码更加紧凑并且无差错。在编译时对语法和语义进行检查。
SQLJ
编译器提供了类型检查和模式对象检查来找出在
SQL
语句中的语法错误或遗漏或拼错这样的错误,这是在编译过程中进行而不是在运行过程中进行。因此,使用
SQLJ
编写的程序比使用
JDBC
编写的程序更加健壮。
多厂商互用性
SQLJ
语法是由主要的软件供应厂商开发和支持的。因为
SQLJ
程序使用运行时
JDBC
调用访问数据库,所以
SQLJ
可以访问任何
JDBC
驱动程序可以实现的数据库服务器。
灵活的部署
因为
SQLJ
运行时程序库是基于
Java
的程序,所以
SQLJ
应用程序可以在任何
JDBC
配置环境中配置,例如瘦客户端,中间层或是数据库服务器上等。
供应厂商具体定制
SQLJ
通过后续的
Java
字节码的定制支持供应厂商具体产品的特色和扩展。它可以被用来改善
SQL
查询语言的执行性能,使用具体供应厂商提供的性能或功能上的扩展,而不用考虑
SQLJ
程序如何变化,以及调试和运行记录等情况。
posted on 2006-09-30 14:16
坏男孩 阅读(1164)
评论(1) 编辑 收藏 所属分类:
新知识学习