Java数据库(JDBC)

来源 :考试周刊 | 被引量 : 0次 | 上传用户:w0520
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文主要介绍采用JDBC、ODBC接口实现了与SQL Server2000数据库的连接,并利用Java应用程序对其进行访问,同时通过图形用户界面实现了简单的查询功能。
  关键词:Java JDBC ODBC Access SQL
  
  前言
  
  Java语言是编写数据库应用程序的杰出语言之一,它提供了方便访问数据的技术。利用Java语言中的JDBC技术,用户能方便地开发出基于Web网页的数据库访问程序,从而扩充网络应用功能。JDBC(Java Database Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一的访问接口。JDBC由一组用Java语言编写的类与接口组成,通过调用这些类和接口所提供的方法,用户能够以一致的方式连接多种不同的数据库系统(如Access、SQL Server 2000、Oracle、Sybase等),进而可使用标准的SQL语言来存取数据库中的数据,而不必再为每一种数据库系统编写不同的Java程序代码。
  Java应用程序通过JDBC API(java.sql)与数据库连接,而实际的动作则是由JDBC驱动程序管理器(JDBC Driver Manager)通过JDBC驱动程序与数据库系统进行连接。ODBC(Open DataBase Connectivity)即开放式的接口,它为用户提供了一个访问关系数据库的标准接口,对于不同的数据库它提供了一套统一的API;可以使应用程序通过API访问任何提供了ODBC驱动程序的数据库,而目前所有的关系数据库都提供了ODBC驱动程序,所以ODBC已经成为数据库访问的业界标准,并得到了广泛应用。
  JDBC(Java DataBase Connectivity)是一种中间件,实现Java应用程序与数据库管理系统之间的接口功能。正如上面所说的,JDBC将数据库编程的抽象程度提高,使得程序员只需说明要进行“数据库连接”而不用说明“怎么连接”,要进行“数据操作”而不用说明“怎么操作”。这种抽象建立在SQL的基础上,应用程序可嵌入SQL访问和操作数据库。这使得应用程序可以独立于特定的关系数据库管理系统。
  
  1. JDBC的体系结构
  
  简单地说,JDBC为应用程序提供一组编程接口,这些接口定义在Java API的java.sql程序包以及JDK 1.2版本以后扩展的javax.sql程序包中。JDBC与数据库管理系统之间则通过安装不同的(一般是与特定数据库管理系统相关的)驱动程序进行通信。驱动程序负责解释应用程序使用JDBC编程接口嵌入的SQL语句,访问特定的数据库管理系统中的数据库,然后得到相应的结果。应用程序利用JDBC编程接口使用返回的结果,完成对数据库的访问。这种体系结构是Java世界中常用的方式,JDBC的体系结构如图1所示。
  
  ODBC(Open Database Connection)也是一种已被广泛使用的应用程序与数据库连接的中间件,但与JDBC提供Java语言编程接口不同,ODBC提供的是C语言编程接口,许多数据库管理系统供应商已经为ODBC编写了相应的数据库驱动程序。JDBC-ODBC桥接驱动器是Java应用程序常用的,由JDBC API自带的一种驱动程序,它通过ODBC以及数据库驱动器与数据库相连,负责将ODBC提供的C语言编程接口转换为Java语言编程接口。
  JDBC-ODBC桥是一种JDBC驱动程序,它通过将JDBC操作转换为ODBC操作来实现。利用JDBC-ODBC桥可以使程序开发人员不需要学习更多的知识就可以编写JDBC应用程序,并能够充分利用现有的ODBC数据源。JDBC-ODBC桥驱动程序可以使JDBC能够访问几乎所有类型的数据库。
  
  2.JDBC(Java通过JDBC、ODBC接口访问数据库)所能完成的3件事
  
  (Ⅰ)与一个数据库连接
  (Ⅱ)向数据库发送SQL语句
  (Ⅲ)处理数据库返回的结果
  下面我们就结合一个例子来说明这3步。
  假设我们有一个用access设计的数据库:student。Mdb,该表中有一个表,其名字为chengjibiao(学号,姓名,数学,物理,英语)。
  (1)数据库连接
  设置数据源:
  打开Windows中的控制面板,双击ODBCData Source图标,出现User Data Source对话框,单击add按钮,增加新的数据源,选择microsoft access driver(*.mdb)之后,单击完成按钮。在Data Source name问本框里为数据源起一个你喜欢的名字(比如redsun),再单击select按钮,把数据源redsun设成要连接的数据库student.mdb,单击ok按钮就可以了。
  建立JDBC-ODBC桥接器:
  Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
  其中Class是包java.sql中的一个类,该类通过调用它的静态方法forName就可以建立JDBC-ODBC桥接器,其标准方法是:
  Try { Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
  }
  Catch (ClassNotFoundExceptione)
  {}
  连接数据库:
  使用包java.sql中的Connection类声明一个对象,再使用类DriverManager调用它的静态方法getConnection创建这个连接对象,其标准方法为:
   Try{Conncetion
  con=DriverManager.getConnection(“jdbc:odbc:redsun”,“snow”,“lss”);
   }
  Catch(SQLException e) {}
  其中snow和lss分别为Login name和password。
  (2)向数据库发送SQL语句
  首先使用statement声明一个SQL语句对象,然后通过刚才创建的连接数据库的对象con调用createstatment()方法来创建这个SQL语句对象。
  try {Statement sql=con.createStatement();}
  catch(SQLException e) { }
  (3)处理数据库返回的结果
  有了SQL对象之后,就可以调用相应的方法实现对数据库的查询和修改,并将查询结果存放在一个ResultSet类声明的对象中,也就是说SQL语句对数据库的查询操作将返回一个ResultSet对象:
  ResultSet rs=sql.executeQuery(“SELECT * FROM 成绩表”);
  下面是一个关于数据库查询的例子。
  import java.sql.*;
  public class aaa
   {public static void main(String args)
  { String name,xuehao;Date date; int math,physics,english;
  Connection con;Statement sql; ResultSet rs;
  try{Class.forName(″sun.jdbc.odbc.JdbcOdbcDriver″);}
  catch(ClassNotFoundException e){}
  try
   {
  con=DriverManager.getConnection(″jdbc:odbc:redsun″,″snow″,″lss″);
   sql=con.createStatement();
   rs=sql.executeQuery(″SELECT * FROM chengjibiao WHERE 学号 = '4' ″);
  while(rs.next())
  { name=rs.getString(2); xuehao=rs.getString(1);
   math=rs.getInt(″数学″);
  physics=rs.getInt(″物理″);english=rs.getInt(″英语″);
  System.out.println(″姓名:″+name);
  System.out.println(″学号:″+xuehao);
  System.out.println(″数学:″+math);
  System.out.println(″物理:″+physics);
  System.out.println(″英语:″+english);
   }
   con.close( );
  }
  catch(SQLException e1) {}
  }
  }
  
  结束语
  
  本文只涉及对SQL Server2000数据库访问的简单查询操作,也可以进行插入、删除、修改等操作。随着数据库技术的发展和Java的不断升级,利用Java对数据库的访问会越来越简单,并且其应用的范围也会越来越广,还有许多新的功能和应用等待我们去研究与开发。
其他文献
学困生,学校教育中永恒的话题。学困生尽管是学生中的极少数,但其转化工作十分重要,这不仅关系到这部分学生自身的成长和前途,而且直接影响到整个班风的根本好转。学困生的转化工作是教师教学中一项非常重要的工作。在长期的教学和班主任工作中,我对学困生的转化工作进行了总结,总结出一套“3+2”转化法。  “3”指的是“三心”:学困生的缺点比较明显,给老师、同学制造的麻烦也比较多,所以真正地感化他们,促使其进步
期刊
摘 要:Java实验教学是Java程序设计课程教学过程中的重要环节,与理论教学相比,其固有的特点决定了它的特殊性和复杂性。针对目前实验教学脱离社会需求的状况,本文通过比较项目方式与非项目方式的Java课程实验,考虑将目前的实验教学采用项目方式以驱动Java实验教学,优化实验教学内容,采用分层次、开放的实验教学来提高Java程序设计课程的教学效果,以适合当今社会需求。  关键词:Java实验教学 项
期刊
摘 要:大学教育属于高等教育中的重要组成部分,对相当一部分人来说大学教育也是其接受系统教育的最后阶段,大学教育的教学质量对其综合素质的养成意义重大。大学英语属于大学教育教学中的基础学科,大学英语课堂教学质量直接影响到学生的英语应用水平和学习兴趣,本文对大学英语课堂教学中PPT使用的有效性进行了探讨,希望能对大学英语教学质量的提高有所帮助。  关键词:大学英语 PPT PPT制作 应用水平 教学手段
期刊
摘要: 本文针对新课标理念下小学数学研究性学习的有效开展,从情境创设、引发探究,独立猜想、自主探究,讨论交流、合作探究三个方面进行有益论述。  关键词: 新课标小学数学探究性学习    《数学新课程标准》中明确强调:“数学学习内容应有利于学生主动地进行观察、实验、猜测、验证、推理和交流等数学活动。”新课程倡导以“自主性、合作性、探索性”的学习方式为主,把思考还给学生,让创新走进课堂,促进学生知识与
期刊
摘 要:学生从小学升入中学后,因学生的学、教师的教都在发生变化,再加上九年义务制教育不实行留级制度和大量外来民工子弟的流入,初中数学“学困生”增多,分化提前。教师需要充分发挥主导作用,多方面做好“学困生”的转化工作,从而大面积提高初中数学教学质量。重点要做好以下几个方面工作:加强心理辅导、多方面关爱“学困生”;激发学习兴趣、提高学习积极性;改进教学方法、提高课堂教学效率;评价个性化、增强自尊心。 
期刊
摘 要:由于种种原因,作为大学校园中一个特殊群体的艺术类专业学生在英语学习上存在着诸如基础较差、学习动机与策略相对欠缺等等问题;而针对他们开设的大学英语课程同样有着设置欠合理、教师教学手段和方法单一等不足之处,艺术专业的大学英语教学一直处于一种进退维谷的境地。针对这些问题,文章提出了改革艺术类专业大学英语课程,进行学习策略培训等相应对策,希望能对这一群体的英语学习及英语水平的提高有所裨益。  关键
期刊
摘 要:英语新课程改革中,要求英语教师根据学生的语言水平、学习需要和实际的教学情况,创造性地使用教材。本文通过评析北师大版高中英语教材,并根据“关于新版高中英语教材使用情况的问卷调查”时反映出的几个主要问题,给使用新版高中英语教材的教师提出几点建议。  关键词:英语课程标准 英语教材 英语教学    随着英语新课程改革的推进,各地中学都使用了按照《英语课程标准》编制的英语教材。与以往的教材相比,新
期刊
摘 要:传统的教学模式不适用《思想道德修养与法律基础》课程。随着新的教学发展需要,笔者尝试从教学内容、教学形式、考试制度等几个方面进行革新。  关键词:思想道德修养与法律基础 教学 方法 革新    2006年8月,《思想道德修养与法律基础》课程(以下简称为《基础课程》)在全国的高校开设。这门课程是高等学校思想政治理论课课程体系的重要组成部分,是在过去《思想道德修养》和《法律基础》两门课程的基础上
期刊
摘 要:在多媒体合成教学成为潮流的时代,语法翻译教学法并没有失去其应有的地位和实用价值。在新兴的应用型本科院校中,低质量生源使语法翻译教学法成为一种迫切的需要,以便在短时间内消除学生英语基础较差、学习策略失当、学习情绪消极等不利于教学开展的因素,更好地实现素质教育,确立学生在教学过程中的主体地位,开展以个性化学习和自主学习为主要标志的教学模式改革。本文分析了语法翻译教学法对应用型本科院校大学英语教
期刊
摘 要:本文阐述了我国现行体育体制的现状,提出了现行体制在运行中存在的问题,就2008年奥运会后我国现行体制的改革趋势进行了分析和论述,提出体育体制改革必须借鉴其他领域改革的成功经验,建立一个具有中国特色的体育体制,探索一条适合中国国情的体育发展模式。  关键词:奥运会后 体育体制 改革趋势    1. 前言    随着我国社会体制的转型,由计划经济转向社会主义市场经济,在中国举办2008年奥运会
期刊