将Java程序与数据库进行连接的操作方法

一个网络关系数据库应用系统是一个三层次结构。客户机与服务器采用网络连接,客户机端应用程序按通信协议与服务器端的数据库程序通信;数据库服务程序通过SQL命令与数据库管理系统通信。

Java程序与数据库连接方法有两种。一种是使用JDBC-ODBC桥接器与数据库连接,一种是用纯Java的JDBC驱动程序实现与数据库连接。
使用JDBC-ODBC 桥接器与数据库连接

Java程序使用JDBC-ODBC 桥接器与数据库连接,Java程序与数据库通信的过程是:
先由数据库应用程序向ODBC驱动管理器发出API调用,ODBC驱动管理器将这个调用转换成向数据库管理系统的ODBC驱动程序调用,数据库管理系统又将这个调用转换成对操作系统的数据输入/输出调用。最后,操作系统从数据库中得到实际数据逐级返回。

数据库编程首先要设置数据源,在ODBC中设置数据源的步骤如下:
打开Windows控制面板中的管理工具。对于windows XP:选择“性能维护”>>“管理工具”>>“数据源(ODBC)”; 对于windows 2000:选择“管理工具”>>“数据源”。
打开“数据源”。出现ODBC数据源管理器对话框,显示现有的数据源名称。
选择“用户DSN”,单击“添加”按钮,出现安装数据源驱动程序对话框。Access(*.mdb)数据源,单击“完成”按钮,出现“创建数据源对话框,键入需要创建的数据源名,并为创建的数据源选择一个数据库表。
单击数据库区域的“选择”按钮,选择需要的数据库表。当需要为数据源授权访问级别时,单击“高级”按钮。设置登录名和密码后,单击“确定”按钮,完成Access数据库在ODBC管理器中的配置。
如果还没有数据库表,则需创建一个数据库表。

数据源就是数据库,在设定了数据源的基础上,Java程序要访问数据库表,还要建立JDBC-ODBC桥接器,让程序与数据库连接。以后,程序就可向数据库发送SQL语句,处理数据库返回的结果。Java数据库连接JDBC(Java DataBase Connectivity)由一组用Java语言编写的类和接口组成,JDBC是Java程序与数据库连接API。它能做以下三件事情:与某个数据库建立连接、向数据库发送SQL语句和处理数据库返回的结果。

调用类方法Class.forName(String s)能建立JDBC-ODBC桥接器。例如,代码:

  try{
    Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
  }catch(Exception e){}

为Java程序加载了驱动程序。
【例】说明与数据库连接的方法connectByJdbcOdbc(),该方法按给定的数据库URL、用户名和密码连接数据库,如果连接成功,方法返回连接对象,连接不成功,则返回空。

public static connection connectByjdbcOdbc(String url, String username, String password){
  Connection con = null;
  try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  //加载ODBC驱动程序
  }
  catch (Exception e){
    e.printStackTrace();
    return null; //连接失败
  }
  try{
    con = DriverManager.getConnection(url, username, password);
  }
  catch (SQLExceotuib e){
    e.printStackTrace();
    return null; //连接不成功
  }
  return con; //连接成功
}

以下代码是对connectByJdbcOdbc()方法的一个调用,数据库连接成功,弹出数据库连接成功信息窗,否则弹出数据库连接不成功信息窗。

if ((con = connectByJdbcOdbc("jdbc:odbc:redsun", "xia", "1234")) != null){
  JoptionPane.showMessageDialog(null, "数据库连接成功");
  try{
    con.close();
    con = null;
  }
  catch (SOLException e){}
}
else
  JOptionPane.showMessageDialog(null, "数据库连接失败");

用纯Java的JDBC驱动程序实现与数据库连接

Java程序也可以用纯Java的JDBC驱动程序实现与数据库连接。这种方法应用较广泛,但是需要下载相应的驱动程序包,因为不同的数据库的连接代码可能不同,连接不同的数据库,加载的驱动程序也可能不同。例如,连接SQLServer的驱动程序在www.msdn.com网站下载,有3个包:msbase.jar,mssqlserver.jar和msutil.jar,并要求将这3个包放在jdk\jre\lib\ext\目录下,或在CLASSPATH中设置其放置位置。

使用纯Java的JDBC驱动程序实现与数据库连接的过程如下:
加载驱动程序。有两种加载驱动程序的方式:
一各是将驱动程序添加到java.lang.System的属性jdbc.drivers中。这是一个DriverManager类加载驱动程序类名的列表,表元用冒号分隔。
另一种方式是从相关的网站下载驱动程序后,在程序中利用Class.forName()方法加载指定的驱动程序。例如:

  Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);

创建指定数据库的URL。数据库的URL对象类似网络的统一资源定位符,其格式是:

  jdbc:subProtocol:subName://hostname:port:Databasename=XXX

其中,subprotocol是某种驱动程序支持的数据库连接机制; subName是当前连接机制下的具体名称;hostName是主机名;port是相应的连接端口;DatabaseName是要连接的数据库名称。例如,以下代码可以是一个数据库的URL:

  jdbc:Microsoft:sqlserver://localhost:1433;Databasename=ksinfo

该数据库的URL说明利用miscrosoft提供的机制,用sqlserve驱动,通过1433端口访问本机上的ksInfo数据库。
建立连接。驱动程序管理器(DriverManager)的方法getConnection()建立连接。

【例】说明与数据库连接的静态方法connectByJdbc(),该方法按给定的数据库URL、用户名和密码连接数据库,如果连接成功,方法返回true,连接不成功,则返回false。

public static Connection conectByJdbc(String url, String username, String password){
  Connection con = null;
  try{
    Class.forName( //加载特定的驱动程序
    "com.microsoft.jdbc.sqlserver.SQLServerDriver");
  }
  catch (Exception e){
    e.printStackTrace();
    return null; //连接失败
  }
  try{
    con = DriverManage.getConnection(url, username, password);
  }
  catch (SQLException e){
    e.printStackTrace();
    return null; //连接失败
  }
  return con; //连接成功
}
(0)

相关推荐

  • Java插入修改删除数据库数据的基本方法

    Java数据库之插入记录 插入数据表记录有3种方案 一.使用Statement对象 实现插入数据表记录的SQL语句的语法是: insert into 表名(字段名1,字段名2,--)value (字段值1,字段值2,--) 例如: insert into ksInfo(考号,姓名,成绩,地址,简历)value('200701','张大卫'534,'上海欧阳路218弄4-1202','') 实现同样功能的Java程序代码是: sql = "insert intoksIno(考号,姓名,成绩,地址,

  • Java开发之Spring连接数据库方法实例分析

    本文实例讲述了Java开发之Spring连接数据库方法.分享给大家供大家参考,具体如下: 接口: package cn.com.service; import java.util.List; import cn.com.bean.PersonBean; public interface PersonService { //保存 public void save(PersonBean person); //更新 public void update(PersonBean person); //获取

  • 使用Java对数据库进行基本的查询和更新操作

    数据库查询 利用Connection对象的createStatement方法建立Statement对象,利用Statement对象的executeQuery()方法执行SQL查询语句进行查询,返回结果集,再形如getXXX()的方法从结果集中读取数据.经过这样的一系列步骤就能实现对数据库的查询. [例]Java应用程序访问数据库.应用程序打开考生信息表ksInfo,从中取出考生的各项信息.设考生信息数据库的结构如下: import java.awt.*; import java.awt.even

  • java 连接sql server2008数据库配置

    1.首先要去Microsoft官网下载sqljdbc2.0驱动--Microsoft SQL Server JDBC Driver 2.0.exe,很小大概就4M,解压后里面有2个Jar包,sqljdbc4.jar和sqljdbc.jar,这两个都一样,只是针对你的JDK的版本的不同,如果你是JDK6.0直接导入sqljdbc4.jar,以下版本的导入sqljdbc.jar,如果怕麻烦的,两个都导进去也行. 2.包导完了,现在启动SQL配置器,SQL2000的默认端口是1433,所以只要开启端口

  • java使用spring实现发送mail的方法

    本文实例讲述了java使用spring实现发送mail的方法.分享给大家供大家参考.具体如下: 这里借鉴别人的优点以及自己的一些加工,写出如下代码: package test; import java.util.Properties; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import org.springframework.mail.SimpleMailMessage; imp

  • Java实现数据库连接池的方法

    本文实例讲述了Java实现数据库连接池的方法.分享给大家供大家参考.具体如下: package com.kyo.connection; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.Driver; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; import j

  • Javascript连接Access数据库完整实例

    本文实例讲述了Javascript连接Access数据库的方法.分享给大家供大家参考.具体实现方法如下: var roc = roc || {}; roc.db = roc.db ||{}; //创建一个连接 roc.db.createDb = function(){ var conn = new ActiveXObject("ADODB.Connection"), fso = new ActiveXObject("Scripting.FileSystemObject&quo

  • mysql+Spring数据库隔离级别与性能分析

    这里以mysql为例,先明确以下几个问题: 一.一般项目如果不自己配置事务的话,一般默认的是autocommit,即执行完一个操作后自动commit,提交事务. (注:事务是绑定在数据库操作上的,也就是当程序执行(statement.excute等操作)转而到数据库层面上的时候,事务才开始发生)当然spring可以将几个数据库操作动作绑在一个事务中,这样就需要介绍下spring事务配置方法,下面介绍的是常用方法,其他方法网上有很多.spring提供了很多事务配置的策略,很方便,简要介绍一下: 复

  • Java连接六类数据库技巧全攻略

    小编在本文将主要为大家介绍Java与Oracle.DB2.Sql Server.Sybase.MySQL.PostgreSQL等数据库连接的方法. 1.Oracle数据库 Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID String user="

  • Java程序连接数据库的常用的类和接口介绍

    编写访问数据库的Java程序还需要几个重要的类和接口. DriverManager类 DriverManager类处理驱动程序的加载和建立新数据库连接.DriverManager是java.sql包中用于管理数据库驱动程序的类.通常,应用程序只使用类DriverManager的getConnection()静态方法,用来建立与数据库的连接,返回Connection对象: static Connection getConnection(String url,String username,Stri

随机推荐