• J2EE--JDBC


    版权声明:本文为博主原创文章,未经博主同意不得转载。

    https://blog.csdn.net/kanglix1an/article/details/36893005

    什么是JDBC?

         Java语言訪问数据库的一种规范,是一套API。JDBC(Java Database Connectivity)API。即Java数据库编程接口。是一组标准的Java语言中的接口和类。使用这些接口和类,Javaclient程序能够訪问各种不同类型的数据库。比方建立数据库连接、运行SQL语句进行数据的存取操作。

     

        JDBC规范採用接口和实现分离的思想设计了Java数据库编程的框架。 为了使client程序独立于特定的数据库驱动程序,JDBC规范建议开发人员使用基于接口的编程方式。

     


     

    什么是JDBC驱动程序?

           是各个数据库厂家依据JDBC的规范制作的JDBC实现类。

    JDBC驱动程序的四种类型:

    1.第一种类型的驱动程序的实现是通过将JDBC的调用所有托付给其他编程接口来实现的,比方ODBC。这样的类型的驱动程序须要安装本地代码库,即依赖于本地的程序。所以便携性较差。比方JDBC-ODBC桥驱动程序

    2. 另外一种类型的驱动程序的实现是部分基于Java语言的。即该驱动程序一部分是用Java语言编写,其他部分托付本地的数据库的client代码来实现。

    同类型1的驱动一样,该类型的驱动程序也依赖本地的程序,所以便携性较差

    3. 第三种类型的驱动程序的实现是所有基于JAVA语言的。该类型的驱动程序通常由某个中间件server提供,这样client程序能够使用数据库无关的协议和中间件server进行通信,中间件server再将client的JDBC调用转发给数据库进行处理

    4.第四种类型的驱动程序的实现是所有基于JAVA语言的。该类型的驱动程序中包括了特定数据库的訪问协议。使得client能够直接和数据库进行通信

     

     

    JAVA使用JDBC訪问数据库的步骤(与ODBC使用基本相似):

    1.得到数据库驱动程序

    2.创建数据库连接

    3. 运行SQL语句

    4.得到结果集

    5.对结果集做相应的处理(增,删,改,查)

    6.关闭资源:这里释放的是DB中的资源


     

      

        PS:Oracle连接字符串的书写格式:“oracle:jdbc:thin:@ip:1521: 数据库名”,”数据库username”,”数据库password”


    简单的样例:

    public void TestJdbc() {
    		String sql = "select * from test_user";
    		Connection con = null;
    		Statement st = null;
    		ResultSet rs = null;
    		try {
    			Class.forName("oracle.jdbc.driver.OracleDriver");
    			con = DriverManager.getConnection(
    					"jdbc:oracle:thin:@127.0.0.1:1521:name", "root", "123456");
    			st = con.createStatement();
    			rs = st.executeQuery(sql);
    			while (rs.next()) {
    				System.out.println(rs.getInt("id"));
    				System.out.println(rs.getString("name"));
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		} finally {
    			try {
    				con.close();
    			} catch (Exception e) {
    			}
    
    			try {
    				st.close();
    			} catch (Exception e) {
    			}
    
    			try {
    				rs.close();
    			} catch (Exception e) {
    			}
    		}
    	}
    

    与ODBC比較:

     

          JDBC和ODBC事实上都是用来连接数据库的驱动程序。ODBC中文名字叫做开放数据库互联,是微软技术人员开发的开放服务结构中有关数据库的一个组成部分,它建立一组相关的规范。并提供了一组对数据库訪问的标准应用程序编程接口。

    简单的说,ODBC就是应用程序与数据库系统进行交互的工具。所有的数据库操作由相应的数据库系统的ODBC驱动程序来完毕。从而能够实现以同一的方式来处理所有的数据库。

          JDBC与ODBC相似,也是一个应用程序与数据库进行通信的中介。仅仅是他们的开发商不同而已。JDBC是由Sun公司向关系型数据库系统厂商提供JDBC的规格与需求;然后各大厂商遵循标准规格设计出符合自己数据库产品的JDBC驱动程序。

    JDBC的整体结构相似于ODBC,有四个组件:应用程序、驱动程序管理器、驱动程序和数据源,工作原理亦大体同于ODBC. 

     

    差别:

    1.JDBC要比ODBCeasy理解。

    2.JDBC数据库驱动程序是面向对象的。

    3.JDBC的移植性要比ODBC要好

     

          总之JDBC与ODBC都是数据库的驱动程序,它们的本质是同样的,都是为了处理SQL语句而设计的。并且JDBC在设计的时候。其也是在ODBC的基础上进行设计的,并保留了ODBC数据库驱动程序的部分功能。或者说,我们能够把JDBC看作是ODBC的还有一个高级版本号也未尝不可。

    JDBC主要在操作上、友好性上做了一定的改进。


  • 相关阅读:
    Spring+Springmvc+SpringJDBC+freemaker+Logback配置
    POJ1942+找规律
    HDU2955+DP+背包变形
    HDU1201+简单题
    HDU1288+枚举
    面试经验(转)
    HDU1864+dp+类似背包
    PKU1659+havelhakimi定理
    算法复杂度分析(摘)
    HDU3047+并查集
  • 原文地址:https://www.cnblogs.com/mqxnongmin/p/10969314.html
Copyright © 2020-2023  润新知