JDBC的连接方式(多数据库版)

来源: huangmp 发布时间:2018-11-14 11:25:44 阅读量:789

     Java数据库连接(JDBC)由一组用  Java  编程语言编写的类和接口组成。JDBC  为工具/数据库开发人员提供了一个标准的  API,使他们能够用纯Java  API  来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。

一、连接各种数据库方式:

 1、Oracle8/8i/9i数据库(thin模式)    



Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();   

String  url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID    

String  user="test";    

String  password="test";    

Connection  conn=  DriverManager.getConnection(url,user,password);   

 

   2、DB2数据库  


Class.forName("com.ibm.db2.jdbc.app.DB2Driver  ").newInstance();   

String  url="jdbc:db2://localhost:5000/sample";  //sample为你的数据库名    

String  user="admin";    

String  password="";    

Connection  conn=  DriverManager.getConnection(url,user,password);   

 

   3、Sql  Server7.0/2000数据库


Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();   

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";   

//mydb为数据库    

String  user="sa";    

String  password="";    

Connection  conn=  DriverManager.getConnection(url,user,password);   

 

   4、Sybase数据库


Class.forName("com.sybase.jdbc.SybDriver").newInstance();   

String  url  ="  jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名    

Properties  sysProps  =  System.getProperties();    

SysProps.put("user","userid");    

SysProps.put("password","user_password");    

Connection  conn=  DriverManager.getConnection(url,  SysProps);   

 

   5、Informix数据库 


Class.forName("com.informix.jdbc.IfxDriver").newInstance();   

String  url  =    

"jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;   

user=testuser;password=testpassword";  //myDB为数据库名    

Connection  conn=  DriverManager.getConnection(url);    

 

   6、MySQL数据库  


Class.forName("org.gjt.mm.mysql.Driver").newInstance();    

String  url  ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"   

//myDB为数据库名    

Connection  conn=  DriverManager.getConnection(url);    

 

   7、PostgreSQL数据库 


Class.forName("org.postgresql.Driver").newInstance();    

String  url  ="jdbc:postgresql://localhost/myDB" //myDB为数据库名    

String  user="myuser";    

String  password="mypassword";    

Connection  conn=  DriverManager.getConnection(url,user,password);   

 

 

   8、access数据库直连用ODBC的 


Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")  ;  

String  url="jdbc:odbc:Driver={MicroSoft  Access  Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb"); 

Connection  conn  = DriverManager.getConnection(url,"","");  

Statement  stmtNew=conn.createStatement()  ; 


(只供查询之用。)



二、JDBC连接MySql方式

    下面是使用JDBC连接MySql的一个小的教程     



    1、查找驱动程序

    MySQL目前提供的java驱动程序为Connection/J,可以从MySQL官方网站下载,并找到mysql-connector-java-3.0.15-ga-bin.jar文件,此驱动程序为纯java驱动程序,不需做其他配置。



    2、动态指定classpath

    如果需要执行时动态指定classpath,就在执行时采用-cp方式。否则将上面的.jar文件加入到classpath环境变量中。



    3、加载驱动程序

try{

    Class.forName(com.mysql.jdbc.Driver);

    System.out.println(Success loading Mysql Driver!);

}catch(Exception e)

{

    System.out.println(Error loading Mysql Driver!);

    e.printStackTrace();



    4、设置连接的url

    jdbc:mysql://localhost/databasename[?pa=va][&pa=va]



三、以下列出了在使用JDBC来连接Oracle数据库时可以使用的一些技巧,这些技巧能够使我们更好地发挥系统的性能和实现更多的功能(系转载)。



  1、在客户端软件开发中使用Thin驱动程序



  在开发Java软件方面,Oracle的数据库提供了四种类型的驱动程序,二种用于应用软件、applets、servlets等客户端软件,另外二种用于数据库中的Java存储过程等服务器端软件。在客户机端软件的开发中,我们可以选择OCI驱动程序或Thin驱动程序。OCI驱动程序利用Java本地化接口(JNI),通过Oracle客户端软件与数据库进行通讯。Thin驱动程序是纯Java驱动程序,它直接与数据库进行通讯。为了获得最高的性能,Oracle建议在客户端软件的开发中使用OCI驱动程序,这似乎是正确的。但我建议使用Thin驱动程序,因为通过多次测试发现,在通常情况下,Thin驱动程序的性能都超过了OCI驱动程序。



  2、关闭自动提交功能,提高系统性能



  在第一次建立与数据库的连接时,在缺省情况下,连接是在自动提交模式下的。为了获得更好的性能,可以通过调用带布尔值false参数的Connection类的setAutoCommit()方法关闭自动提交功能,如下所示:



  conn.setAutoCommit(false);



  值得注意的是,一旦关闭了自动提交功能,我们就需要通过调用Connection类的commit()和rollback()方法来人工的方式对事务进行管理。



  3、在动态SQL或有时间限制的命令中使用Statement对象



  在执行SQL命令时,我们有二种选择:可以使用PreparedStatement对象,也可以使用Statement对象。无论多少次地使用同一个SQL命令,PreparedStatement都只对它解析和编译一次。当使用Statement对象时,每次执行一个SQL命令时,都会对它进行解析和编译。这可能会使你认为,使用PreparedStatement对象比使用Statement对象的速度更快。然而,我进行的测试表明,在客户端软件中,情况并非如此。因此,在有时间限制的SQL操作中,除非成批地处理SQL命令,我们应当考虑使用Statement对象。



  此外,使用Statement对象也使得编写动态SQL命令更加简单,因为我们可以将字符串连接在一起,建立一个有效的SQL命令。因此,我认为,Statement对象可以使动态SQL命令的创建和执行变得更加简单。



  4、利用helper函数对动态SQL命令进行格式化



  在创建使用Statement对象执行的动态SQL命令时,我们需要处理一些格式化方面的问题。例如,如果我们想创建一个将名字O'Reilly插入表中的SQL命令,则必须使用二个相连的"''"号替换O'Reilly中的"'"号。完成这些工作的最好的方法是创建一个完成替换操作的helper方法,然后在连接字符串心服用公式表达一个SQL命令时,使用创建的helper方法。与此类似的是,我们可以让helper方法接受一个Date型的值,然后让它输出基于Oracle的to_date()函数的字符串表达式。



  5、利用PreparedStatement对象提高数据库的总体效率



  在使用PreparedStatement对象执行SQL命令时,命令被数据库进行解析和编译,然后被放到命令缓冲区。然后,每当执行同一个PreparedStatement对象时,它就会被再解析一次,但不会被再次编译。在缓冲区中可以发现预编译的命令,并且可以重新使用。在有大量用户的企业级应用软件中,经常会重复执行相同的SQL命令,使用PreparedStatement对象带来的编译次数的减少能够提高数据库的总体性能。如果不是在客户端创建、预备、执行PreparedStatement任务需要的时间长于Statement任务,我会建议在除动态SQL命令之外的所有情况下使用PreparedStatement对象。



  6、在成批处理重复的插入或更新操作中使用PreparedStatement对象



  如果成批地处理插入和更新操作,就能够显著地减少它们所需要的时间。Oracle提供的Statement和 CallableStatement并不真正地支持批处理,只有PreparedStatement对象才真正地支持批处理。我们可以使用addBatch()和executeBatch()方法选择标准的JDBC批处理,或者通过利用PreparedStatement对象的setExecuteBatch()方法和标准的executeUpdate()方法选择速度更快的Oracle专有的方法。要使用Oracle专有的批处理机制,可以以如下所示的方式调用setExecuteBatch():

PreparedStatement pstmt3D null;

try {

((OraclePreparedStatement)

pstmt).setExecuteBatch(30);

...

pstmt.executeUpdate();





  调用setExecuteBatch()时指定的值是一个上限,当达到该值时,就会自动地引发SQL命令执行,标准的executeUpdate()方法就会被作为批处理送到数据库中。我们可以通过调用PreparedStatement类的sendBatch()方法随时传输批处理任务。



  7、使用Oracle locator方法插入、更新大对象(LOB)



  Oracle的PreparedStatement类不完全支持BLOB和CLOB等大对象的处理,尤其是Thin驱动程序不支持利用PreparedStatement对象的setObject()和setBinaryStream()方法设置BLOB的值,也不支持利用setCharacterStream()方法设置CLOB的值。只有locator本身中的方法才能够从数据库中获取LOB类型的值。可以使用PreparedStatement对象插入或更新LOB,但需要使用locator才能获取LOB的值。由于存在这二个问题,因此,我建议使用locator的方法来插入、更新或获取LOB的值。



  8、使用SQL92语法调用存储过程



  在调用存储过程时,我们可以使用SQL92或Oracle PL/SQL,由于使用Oracle PL/SQL并没有什么实际的好处,而且会给以后维护你的应用程序的开发人员带来麻烦,因此,我建议在调用存储过程时使用SQL92。



  9、使用Object SQL将对象模式转移到数据库中



  既然可以将Oracle的数据库作为一种面向对象的数据库来使用,就可以考虑将应用程序中的面向对象模式转到数据库中。目前的方法是创建Java bean作为伪装的数据库对象,将它们的属性映射到关系表中,然后在这些bean中添加方法。尽管这样作在Java中没有什么问题,但由于操作都是在数据库之外进行的,因此其他访问数据库的应用软件无法利用对象模式。如果利用Oracle的面向对象的技术,可以通过创建一个新的数据库对象类型在数据库中模仿其数据和操作,然后使用JPublisher等工具生成自己的Java bean类。如果使用这种方式,不但Java应用程序可以使用应用软件的对象模式,其他需要共享你的应用中的数据和操作的应用软件也可以使用应用软件中的对象模式。



  10、利用SQL完成数据库内的操作



  我要向大家介绍的最重要的经验是充分利用SQL的面向集合的方法来解决数据库处理需求,而不是使用Java等过程化的编程语言。



  如果编程人员要在一个表中查找许多行,结果中的每个行都会查找其他表中的数据,最后,编程人员创建了独立的UPDATE命令来成批地更新第一个表中的数据。与此类似的任务可以通过在set子句中使用多列子查询而在一个UPDATE命令中完成。当能够在单一的SQL命令中完成任务,何必要让数据在网上流来流去的?我建议用户认真学习如何最大限度地发挥SQL的功能













应用Java技术实现数据库应用系统



  Java 语言是Sun MicroSystems 公司于1995年正式命名并推出的一种面向对象的编程语言-OOP(abbr.Object Oriented Programming)。Sun 公司说:Java 程序设计语言被设计成是 by programmers for programmers,其随着 Internet 的发展而广为流行。用它开发的系统“一次开发,到处运行”的特色以及程序开发设计时所体现出的面向对象的思想深深地触动着人们。它的语言简洁、集多种程序设计语言之大成,且面向对象、具有可移植性、分布性、安全性、高性能等特色。Java在向Internet/Intranet,甚至计算机世界的各个领域渗透,慢慢改变着人们的思维。而今Internet 热浪一浪高过一浪,从外部世界走向企业内部形成Intranet,促进了Java 技术的利用开发。计算机业界中的IBM、ORACAL 、APPLE、Sun、Netscape五家公司还联合推出“网络计算机(NC-1)”规范。抛开“Wintel”臃肿不堪的体系结构,使用户端价格低廉、易于使用,并成为能够连接网络的简单计算机-NC(Network Computer),即所说的“瘦客户”机,NC 支持Java 虚拟机(JVM),能够运行Java开发的应用程序(Application)和小程序(Applet)并支持多媒体应用。NC 和Java 的结合诞生了新的时代:网络计算机时代。就连Sun的冤家对头Microsoft的比尔.盖茨也不得不承认:“Java是长时间以来最卓越的程序设计语言”。



  一、 Java 数据库基础 JDBC API



  Java语言在数据库应用方面,特别在基于Web 的B/S结构的在线数据库应用方面的烦琐复杂配置等,并不能使用户和程序开发双方都十分满意。SunSoft虽提供了用Java语言编写成的Java与数据库的接口规范JDBC(Java DataBase Connectivity,而JavaSoft说JDBC并不代表什么),使Java程序可以通过统一标准规范的JDBC API来与不同的数据库通信。确保了“100%纯Java”的解决方案。JDBC API 定义了Java中的类和接口,表示数据库连接、SQL 指令、结果集合等。它允许Java程序员发送SQL 指令并处理结果。JDBC API 提供两种主要接口:一是面向开发人员的java.sql程序包,使得Java程序员能够进行数据库连接,执行SQL查询,并得到结果集合。Java2 的java.sql包提供了6个类和18个接口,下文将介绍;另一是面向底层数据库厂商的JDBC Drivers ,目前为止,Java2的JDBC Drivers仅提供下述四种类型的数据库驱动方式,且各有利弊:



  (1) JDBC-ODBC bridge plus ODBC driver 方式:JDBC-ODBC 桥接方式利用微软的开放数据库互连接口(ODBC API)同数据库服务器通讯,客户端计算机首先应该安装并配置ODBC driver 和JDBC-ODBC bridge两种驱动程序。这是Applets访问你的数据库最可能的解决方式,但这对Internet 和Intranet 用户而言简直是一个非常令人讨厌和麻烦的解决方案。



  (2) Native-API partly Java driver方式:这种驱动方式将数据库厂商的特殊协议转换成Java代码及二进制类码,使Java 数据库客户方与数据库服务器方通信。例如:Oracle用SQLNet协议,DB2用IBM 的数据库协议。数据库厂商的特殊协议也应该被安装在客户机上。这也是令人讨厌和麻烦的解决方案。



  (3) JDBC-Net pure Java driver方式:这种方式是纯Java driver。数据库客户以标准网络协议(如HTTP、SHTTP)同数据库访问服务器通信,数据库访问服务器然后翻译标准网络协议成为数据库厂商的专有特殊数据库访问协议(也可能用到ODBC driver)与数据库通信。对Internet 和Intranet 用户而言这是一个理想的解决方案。Java driver 被自动的,以透明的方式随Applets自Web服务器而下载并安装在用户的计算机上。



  (4) Native-protocol pure Java driver方式:这种方式也是纯Java driver。数据库厂商提供了特殊的JDBC协议使Java数据库客户与数据库服务器通信。然而,将把代理协议同数据库服务器通信改用数据库厂商的特殊JDBC driver。这对Intranet 应用是高效的,可是数据库厂商的协议可能不被防火墙支持,缺乏防火墙支持在Internet 应用中会存在潜在的安全隐患。



  综上四种方式中,只有第三、四种方式的驱动支持 Applet的零安装。因为JDBC drivers 完全用Java 写成,并从Web 服务器上随applet下载。为了支持零安装,驱动程序应该被放在Web上,并与applet 在相同目录。而第四种存在安全隐患,第三种产品为数不多,现今较成熟的IDS JDBC driver属于此种(http://www.idssoftware.com),但也要用到ODBC driver辅助。



  即便如此,利用Java技术开发单机环境应用程序,局域网范围或Intranet环境下的应用程序、动态Web应用(Live Intranet)等,Java语言是高效、安全、稳定的。Java语言已赢得了众多厂商的支持,基于其上的Java API-JDBC也发展迅速。Sun承诺任何Java Applet 或Java应用软件都能够与数据库结合,并且仍将不遗余力的支持未来Java技术的发展。Java语言的跨平台特性,使之成为Internet和Intranet环境下开发数据库应用系统的理想选择方案。



 二、 Java 数据库应用系统的实现



  基于此,笔者用Java 2 SDK,Standard Edition Version 1.2.1版本为开发工具,以已经成功开发的Java数据库应用系统案例为模板,结合Java2程序语句及java.sql包,介绍一下Java数据库应用系统开发的具体实现步骤、方法等。



  1.设置数据库的连接



  为了利用JDBC,你将需要一个数据库服务器和一个数据库驱动器。因为大多数读者的计算机已经安装了Windows95/98,我就用微软的 Access 97做为我的数据库服务器(具体为Action.mdb),当然你也可以用其它的数据库作为数据库服务器。因为对JDBC而言,数据库服务器的类型无关紧要,JDBC会提供一个独立于数据库服务器的访问数据库的方法。这是JDBC的主要优势所在。



  你将还需要一个数据库驱动器,用来提供JDBC与你的数据库的连接。作者选用了较可能的JDBC-ODBC bridge 方式。为此需设置32-bit ODBC的数据源,选择System DSN(数据可被多用户访问,User DSN不同),增加新的数据源,配置新数据源的路径为Action.mdb数据库服务器的所在位置。



  安装完成,Java程序员可以进行编制程序的阶段。首先程序员引用java.sql 包中相应的类与接口来进行对JDBC驱动器的管理:用Class 类中的 forName() 方法装入 JDBC驱动器,以JDBC-ODBC bridge 方式为例,装入JDBC驱动执行的语句为Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);用DriverManager 类中getDrivers()方法返回所有安装在你的计算机中的JDBC驱动器,getConnection()建立与数据库的连接等。getConnection()方法提供下面三种形式:



  getConnection(String url)



  getConnection(String url,String userID,String password)



  getConnection(String url,Properties arguments)



  其中字符串url表示数据库服务器所在处的特殊的URL。URL是被用来与不同的数据库驱动建立连接的统一网络资源,其形式如下:



  jdbc:subprotocol:subname



  所有的JDBC数据库协议开始于jdbc:。Subprotocol是被用来辨别JDBC驱动方式的。例如:JDBC-ODBC bridge 用jdbc:odbc:subname 这种用户协议形式,IDS JDBC driver 用jdbc:ids:subname 形式。数据库协议的subname标识数据库并且与subprotocol 和JDBC驱动方式有关。例如,以JDBC-ODBC bridge方式,我用下面的URL形式建立与数据源Tend建立连接:



  jdbc:odbc:tend



  getDrivers()和getConnection()方法是DriverManager类中最重要的方法,还有其它一些方法在此略。



  2.与数据库进行连接



  用DriverManager类的getConnection() 方法建立起与数据库连接,getConnection()返回一个对象,此对象是java.sql包中的Connection 接口对象。该接口定义了与之连接的数据库交互的一些方法、常量等,这些方法用来管理数据库的连接、获得连接的信息、提交数据库处理事件并且预处理可执行的SQL语句。下面是Connection 接口的一些重要的方法:



  close()-关闭一个数据库连接



  getMetaData()-返回一个DatabaseMetaData 接口对象,该接口能被用来获得有关数据库的详细信息,包括数据库结构和数据库内容等。



  createStatement()-创建一个SQL语句对象。 



  prepareStatement()-用SQL字符串创建一个SQL 预处理语句对象。预处理语句对象是可以被高效执行的预编译过的SQL语句。



  下面提供一段程序,实现了JDBC的驱动及数据库的连接,供参考:



  import java.sql.*;

  import java.util.*;

  class ConnectApp {

  public static void main(String args[]) {

  try{

  // Load the JDBC-ODBC bridge driver方式

  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  String url="jdbc:odbc:tend";

  // 连接到数据库

  Connection connection=DriverManager.getConnection(url);

  // 得到数据库的信息

  DatabaseMetaData meta=connection.getMetaData();



  3.利用结果集工作



  数据库查询被执行后,查询的结果作为一个两维(行、列)数据表返回。ResultSet接口被用来提供访问查询结果的数据表,查询结果被当作ResultSet对象而返回,ResultSet对象提供“指针”,指针每次访问数据库表的一行。当ResultSet对象从查询中返回时,指针初始指向数据表的第一行,ResultSet 的next() 方法用来移动指针到数据表的下一行,如果到达表尾,next() 方法返回假的布尔值-false,否则为真。ResultSet接口提供大量的获得数据的方法,这些方法返回数据表中任意位置的数据,不论是基本数据类型或引用数据类型的数据。getMetaData()方法返回ResultSetMetaData接口对象,该对象包含数据表行的信息。ResultSetMetaData 接口提供变量和从ResultSet对象获取信息的方法,getColumnCount() 方法返回数据表的列数,getColumnName() 方法返回提取的数据库中的列名称,即数据库字段名,getColumnType() 方法返回列的SQL类型,ResultMetaData中其它的方法被用访问列的额外属性,如列的显示宽度、数据格式及读/写状态等。注意ResultSet中的列其始索引号为1而不是0。下面提供一段程序:



  static void displayResults(ResultSet r) throws SQLException {



  // 获得数据结果集合

  ResultSetMetaData rmeta = r.getMetaData();

  // 确定数据集的列数,亦字段数

  int numColumns=rmeta.getColumnCount();

  // 输出每一个数据值

  for(int i=1;i<=numColumns;++i) {

  if(i   System.out.print(rmeta.getColumnName(i)+" | ");

  else

  System.out.println(rmeta.getColumnName(i));

  }

  while(r.next()){

  for(int i=1;i<=numColumns;++i) {

  if(i   System.out.print(r.getString(i)+" | ");

  else

  System.out.println(r.getString(i).trim());

  }

  }

  }



  4.执行SQL语句



  SQL代表着结构化查询语言,即 Structured Query Language的缩写。SQL是用来同数据库服务器交互的一种语言。SQL被IBM在70-80年代开发,80年代后进行了标准化。但标准已经更新,现已出现好几个版本。另外一些数据库厂商也增加扩展了一些特殊的功能语句等。JDBC需要与JDBC兼容的SQL驱动支持,即支持ANSI SQL72标准。SQL有很多用途,当SQL语句被用来创建、设计数据库时,它是一个数据定义语言;当用来向数据库插入信息、更新或删除已经存在的信息时,它是一个数据维护语言;当从数据库中查询提取信息时,它是数据查询语言。有关SQL语句的一些语法规则,请参考有关书籍,在此略。Java语言设计java.sql 包的目的就是让你执行符合Java的SQL语句。java.sql中的Statement 接口定义了一些方法,这些方法通过SQL语句的执行来与数据库交互,也支持通过ResultSet对象返回查询结果集合的处理和提供查询处理机制的控制。execute()、 executeQuery() 和executeUpdate() 方法是Statement接口的主要方法。executeQuery() 方法执行一个 SQL语句(如SELECT语句等)并查询返回一个ResultSet对象。executeUpdate() 方法执行一个SQL 语句 (如INSERT、UPDATE、DELETE 语句等)并更新数据库、返回SQL查询结果集合的行数(记录数),如果结果集合为空则行数为0。



  Java中有关SQL语句的程序片段如下:



  import java.sql.*;

  import java.util.*;

  class ResultApp {

  public static void main(String args[]) {

  try{

  // Load the JDBC-ODBC bridge driver方式

  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  String url="jdbc:odbc:tend";

  // 连接到数据库

  Connection connection=DriverManager.getConnection(url);

  Statement statement = connection.createStatement();

  String sql="SELECT * FROM courses";

  // 执行SQL 语句得到结果集合

  ResultSet result = statement.executeQuery(sql);

  displayResults(result);

  // 关闭数据库连接

  connection.close();

  }catch(Exception ex){

  System.out.println(ex);

  System.exit(0);

  }

  }



  5.数据库安全性



  数据库的安全性问题是很多机构非常关心的问题。因为数据库中可能包含一些比较敏感的信息需要加以限制访问范围;数据的完整性也是极为重要的,未授权的肆意修改数据库信息可能造成公司巨大的损失;数据的有效提供也是重要的,Internet/Intranet用户随时需要信息,这就常常需要提供每天24小时、每周7天的可访问。JDBC支持数据库安全吗?答案不是非常满意。当前JDBC要依靠数据库服务器自身提供安全保护。企业范围的数据库服务器,如微软的SQL Server提供用户ID和口令,然而,即使是口令保护也不是非常安全的,如果口令在客户与服务器之间未加密,它们能很容易被截获而危及安全。



  Java的安全机制很高,Java2改进了沙箱,为用户和程序人员提供了灵活的安全管理及配置工具。Applet程序安全性更加灵活,建议利用Java的安全机制及提供的一些工具来进行数据库应用系统的开发。



  Java2(JDK1.2)提供的安全工具如下:



  用jar工具打包你的applets成为Java 存档文件 (JAR);



  用jarsigner对JAR文件进行数字签名;



  用policytool对信任applets的Java运行环境Java Runtime Environment (JRE)配置;



  用keytool进行数字证书的签证;



 三、 Java 的数据库应用开发展望



  至此,你已知道:要进行Java 数据库应用程序的设计,需要具备多方面的技能,包括了解或熟练数据库驱动程序、SQL( 结构化查询语言)以及java.sql包所包含的类、接口等。JavaSoft 已经注意到了Java 在数据库程序设计方面的棘手而复杂,他们现在正在开发新的同Java一样容易使用的产品JavaBlend ,该产品将大大简化利用JDBC构建数据库应用系统的过程。JavaBlend 将自动镜像Java 对象成为存储在数据库中的信息。所有对对象的操作,都将产生与之镜像的数据库的动作,包括对存储在数据库中信息的自动查询、更新等。一旦Java 的对象到数据库镜像(Java object-to-database mapping)被成功建立,JavaBlend 将免费发放给Java 程序员,以使Java 程序员从利用繁琐SQL语句、结果集合解决方案过渡到利用JavaBlend 把对Java 对象的方法调用相应地自动转化成SQL语句和结果集合这一简单方案。这将使JDBC和SQL知识在数据库开发时不必考虑过多,而使程序员专心于用户业务方案的提供解决。JavaBlend目前并不包含在JDK 1.2中。



  Java 语言及其技术是当今世界程序设计语言的主流。应用Java 技术实现数据库应用系统是未来的发展方向,Java 的数据库应用现已成功地应用于商业、政府及大学等领域,应用才刚刚起步。相信不久的将来,Java 技术将更加完善成熟。Java的数据库应用也将遍地开花。

--------------------- 



标签: 数据库
分享:
评论:
你还没有登录,请先