zoukankan      html  css  js  c++  java
  • java开发中纯驱动方式JDBC连接数据库

    JDBC连接数据库

    一、下载数据库厂商提供的驱动程序包

     mysql-connector-java-5.1.15-bin.jar、ojdbc6-11.2.0.4.jar

    二、将驱动程序包引入工程中,步骤如下

       选中项目——单击右键——Build Path——Configure Build Path

        在打开的构建路径对话框中,点击Libraries选项卡,然后点击Add External JARs 按钮

    三、编程,通过纯Java驱动方式与数据库建立连接。

    •创建一个以JDBC连接数据库的程序,包含7个步骤:   

      1、加载JDBC驱动程序:   

        String oracleDrive = "oracle.jdbc.OracleDriver";

        String mysqlDrive = "com.mysql.jdbc.Driver";

         例如:

        try{  //加载MySql的驱动类   

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

          }catch(ClassNotFoundException e){   

             System.out.println("找不到驱动程序类 ,加载驱动失败!");   

             e.printStackTrace() ;   

           }   //成功加载后,会将Driver类的实例注册到DriverManager类中。   

      2、提供JDBC连接的URL   

         例如:(Oracle、MySql的连接URL)   

           String oracleUrl = "jdbc:oracle:thin:@localhost:1521:orcl11g";

           String mysqlUrl = "jdbc:mysql: //localhost:3306/test" ;   

      3、创建数据库的连接 (分配一个Connection对象)

        例如:   //连接MySql数据库,用户名和密码都是root   

           String url = "jdbc:mysql://localhost:3306/test" ;    

           String username = "root" ;   

           String password = "root" ;  

           try{   

               Connection con = DriverManager.getConnection(url , username , password ) ;   

            }catch(SQLException e){   

               System.out.println("数据库连接失败!");   

               e.printStackTrace() ;   

            }   

      4、创建一个Statement   

         •要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3种类型:   

          1、执行静态SQL语句。通常通过Statement实例实现。

          2、执行动态SQL语句。通常通过PreparedStatement实例实现。

          3、执行数据库存储过程。通常通过CallableStatement实例实现。   

        具体的实现方式:   

          Statement stmt = con.createStatement() ;   

          PreparedStatement pstmt = con.prepareStatement(sql) ;   

          CallableStatement cstmt = con.prepareCall("{CALL demoSp(? , ?)}") ;  

      5、执行SQL语句   

         Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate 和execute   

          1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句,返回一个结果集(ResultSet)对象。   

          2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等

          3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的语句。   

         具体实现的代码:   

          ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;

          int rows = stmt.executeUpdate("INSERT INTO ...") ;   

          boolean flag = stmt.execute(String sql) ;   

      6、处理结果   

         两种情况:

          1、执行更新返回的是本次操作影响到的记录数。  

          2、执行查询返回的结果是一个ResultSet对象。   

             • ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些行中数据的访问。   

             • 使用结果集(ResultSet)对象的访问方法获取数据:

              while(rs.next()){   

                String name = rs.getString("name") ;   

                String pass = rs.getString(1) ; // 此方法比较高效   

               }   (列是从左到右编号的,并且从列1开始)   

      7、关闭JDBC对象    

        操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:

          1、关闭记录集

          2、关闭声明  

          3、关闭连接对象  

    package com.b510;
     
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    /**
     *
     * @author Hongten</br>
     * @date 2012-7-16
     *
     */
    public class JDBCTest {
        public static void main(String[] args) {
            String driver = "com.mysql.jdbc.Driver";
            String dbName = "spring";
            String passwrod = "root";
            String userName = "root";
            String url = "jdbc:mysql://localhost:3308/" + dbName;
            String sql = "select * from users";
     
            try {
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(url, userName,
                        passwrod);
                PreparedStatement ps = conn.prepareStatement(sql);
                ResultSet rs = ps.executeQuery();
                while (rs.next()) {
                    System.out.println("id : " + rs.getInt(1) + " name : "
                            + rs.getString(2) + " password : " + rs.getString(3));
                }
     
                // 关闭记录集
                if (rs != null) {
                    try {
                        rs.close();
                    catch (SQLException e) {
                        e.printStackTrace();
                    }
                }
     
                // 关闭声明
                if (ps != null) {
                    try {
                        ps.close();
                    catch (SQLException e) {
                        e.printStackTrace();
                    }
                }
     
                // 关闭链接对象
                if (conn != null) {
                    try {
                        conn.close();
                    catch (SQLException e) {
                        e.printStackTrace();
                    }
                }
     
            catch (Exception e) {
                e.printStackTrace();
            }
        }
     
    }


    运行效果:

    1
    id : 3 name : hongten password : 123
     

    java中的JDBC纯驱动方式连接Oracle数据库

    丹枫红叶520上传于2014-01-03|质量:3.2|34021|1047|文档简介|举报

       手机打开
     
     

    java

    中的

    JDBC

    纯驱动方式连接

    Oracle

    数据库

     

    一、下载数据库厂商提供的驱动程序包

     

    二、将驱动程序包引入工程中,步骤如下

     

    1

    、选中项目——单击右键——

    Build Path

    ——

     

    Configure Build Path 

    2

    、在打开的构建路径对话框中,点击

    Libraries

    选项卡,然后点击

    Add External JARs

    „按钮

    火线速递:山川在我脚下,大地在我怀中;我就是这原野山川之主,我就是这天地万物之灵

  • 相关阅读:
    thymeleaf 模板引擎
    thymeleaf 内联语法
    thymeleaf 局部变量、属性优先级、注释
    PYNQ上手笔记 | ① 启动Pynq
    MSP430F5529时钟系统深究
    C#上位机开发(四)—— SerialAssistant功能完善
    C#上位机开发(三)—— 构建SerialAssistant雏形
    C#上位机开发(二)—— Hello,World
    C#上位机开发(一)—— 了解上位机
    FPGA学习笔记(八)—— 状态机设计实例之独立按键消抖
  • 原文地址:https://www.cnblogs.com/huoxiansudi/p/6884076.html
Copyright © 2011-2022 走看看