一个网络关系数据库应用系统是一个三层次结构。客户机与服务器采用网络连接,客户机端应用程序按通信协议与服务器端的数据库程序通信;数据库服务程序通过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; //连接成功

}

java程序与数据库连接_将Java程序与数据库进行连接的操作方法相关推荐

  1. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  2. java多语言编程语言_为什么很多程序员信仰“Java是世界上最好的编程语言”

    看到这个标题,估计有不少PHPer要跳进来打我膝盖,跪请各位Java程序员保我周全. 因为PHP是所有web开发中使用最多的语言,也被称为最有生命力的语言,所以也就自然而言有了"PHP是世界 ...

  3. 编写java程序的三步骤_帮助Java小白涨知识的教程(三)(运行HelloWorld程序)

    总共有三个步骤:编写----------编译-----------执行 要用的文件:文字编译器(notepad++\editplus...)------------------------------ ...

  4. 开发java程序的步骤_开发 Java 程序的一般步骤是:源程序编辑、 和 。_学小易找答案...

    [多选题]财务报表分析具有广泛的用途,一般包括( ). [单选题]在财务报表分析中,投资人是指( ). [单选题]阅读下列代码,选出该代码段正确的文件名( ). class A{ void metho ...

  5. java 程序增加 防盗_防盗Java EE –保护Java EE企业应用程序的安全

    java 程序增加 防盗 Øredev离我们仅有几天的路程,我受邀作了两次演讲. 其中之一是关于我最喜欢的主题:安全性和Java EE. 它旨在实现两个目标. 一方面向典型的Java EE开发人员介绍 ...

  6. java 注解应用技巧_改善Java应用程序性能的快速技巧

    java 注解应用技巧 曾经遇到过性能问题吗? 我也是. 如果我的经理再喊一次" faaaaster",我一生都会有听力障碍. 顺便说一句,我能听到所有噪音中的德语发音吗? ;-) ...

  7. java实验多线程机制_使用Java多线程的同步机制编写应用程序 PDF 下载

    使用Java多线程的同步机制编写应用程序 PDF 下载 本站整理下载: 相关截图: 主要内容: 一. 实验名称 使用Java多线程的同步机制编写应用程序 二. 实验目的及要求 1.理解并行/并发的概念 ...

  8. java小程序详解_微信小程序登录Java后台接口(详解,附示例代码)

    首先看一下官方文档 地址:微信小程序官方文档API登录接口 我们先对官方给的时序图进行简单的分析 1.当小程序调用wx.login()时,会获得一个code(临时登录凭证),然后我们需要用wx.req ...

  9. java修炼之道_《Java程序员修炼之道》

    第2章 新I/O 本章内容: --新I/O API(NIO.2) --Path:基于文件和目录的I/O新基础 --Files应用类和各种辅助方法 --如何实现常见的I/O应用场景 --介绍异步I/O ...

  10. java 8 中文字体_在java程序中直接使用中文字体文件

    在java程序中直接使用中文字体文件.代码中的hb.ttf文件请用你自己的中文字体文件代替 java学习 java培训 软件工程师 如何学习java 学习java哪里好 东方清软java培训 清软国际 ...

最新文章

  1. VMware Mac版本漏洞可任意执行恶意代码
  2. matlab 数组元素连乘积prod
  3. 使用literal语法格式化字符串
  4. 数据库基本知识篇二:关系数据库那些事儿
  5. javascript的stack overflow
  6. JQuery使用手册 转载
  7. 利用UrlRewrite,asp.net动态生成htm页面
  8. World Wind Java 系列
  9. mysql僵尸进程_僵尸进程产生原因和解决方法
  10. 基于python提火车票信息_python3.X 抓取火车票信息【修正版】
  11. 输入的数字或者英文字符间距都特别大,怎么解决
  12. 珠海实验室通风系统建设安装说明
  13. 中国首个细胞治疗类药品获批上市;恒瑞医药创新药氟唑帕利第二个适应症获批上市 | 医药健闻...
  14. 【设计模式】之 Prototype 原型模式
  15. odoo11在win10环境搭建
  16. python 点击tree目录、执行下一个操作_如何使用python解决下一个iter(xml.etree.ElementTree)?...
  17. Linux——终端和shell
  18. UI设计入门知识大全!零基础小白必看
  19. C语言 多线程实现TCP并发服务器
  20. 使迅雷超速的六个超级技巧

热门文章

  1. 基于php的高校田径运动会管理系统
  2. 推荐一些经典的编程从入门到进阶的书籍-附下载资源
  3. 网络重置或电脑重置后WLAN/WIFI图标不显示 最全解决方法
  4. VHDL实现交通灯程序
  5. SQL知识(浓缩版)快速入门(基础语法、概念)
  6. python数据处理源代码_python数据分析与应用源数据和代码
  7. Python暴力破解附近局域网WiFi密码
  8. Unity拓展编辑器 一键导出图集工具
  9. 服务器iis的作用,IIS是什么 IIS服务组件有什么作用
  10. rr与hr_rr指标:HR和RR的区别