• Java连接Oracle数据库常用方法


    JDBC的六大步骤:

    • 注册驱动
    • 获取连接
    • 获取执行sql语句对象
    • 执行sql语句
    • 处理结果集
    • 关闭资源

    oracle URL

    jdbc:oracle:thin:@localhost:1521:SID

    jdbc:oracle:thin:@//localhost:1521:SERVICENAME

    MySQL URL

    jdbc:mysql://localhost:3306/数据库名称

    thin:小型驱动,驱动方式

    localhost 本机ip地址 127.0.0.1

    SID:数据库的SID

    SERVICENAME:数据库的SID


    两种常用连接方式

    代码:

    package cn.zhisheng.test.jdbc;
    
    import oracle.jdbc.driver.OracleDriver;
    import java.sql.*;
    import java.util.Properties;
    /**
     * Created by 10412 on 2016/12/27.
     * JDBC的六大步骤
     * JAVA连接Oracle的三种方式
     */
    public class JdbcTest
    {
        public static void main(String[] args) {
            Connection connect = null;
            Statement statement = null;
            ResultSet resultSet = null;
    
            try {
                //第一步:注册驱动
                //第一种方式:类加载(常用)
                //Class.forName("oracle.jdbc.OracleDriver");
    
                //第二种方式:利用Driver对象
                Driver driver = new OracleDriver();
                DriverManager.deregisterDriver(driver);
    
    
                //第二步:获取连接
                //第一种方式:利用DriverManager(常用)
                //connect = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "你的oracle数据库用户名", "用户名密码");
    
                //第二种方式:直接使用Driver
                Properties pro = new Properties();
                pro.put("user", "你的oracle数据库用户名");
                pro.put("password", "用户名密码");
                connect = driver.connect("jdbc:oracle:thin:@localhost:1521:XE", pro);
    
                //测试connect正确与否
                System.out.println(connect);  
    
    
                //第三步:获取执行sql语句对象
                //第一种方式:statement
                //statement = connect.createStatement();
    
                //第二种方式:PreStatement
                PreparedStatement preState = connect.prepareStatement("select  * from tb1_dept where id = ?");
    
    
                //第四步:执行sql语句
                //第一种方式:
                //resultSet = statement.executeQuery("select  * from tb1_dept");
    
                //第二种方式:
                preState.setInt(1, 2);//1是指sql语句中第一个?,  2是指第一个?的values值
                //resultSet = preState.executeQuery();        //执行查询语句
                //查询任何语句,如果有结果集,返回true,没有的话返回false,注意如果是插入一条数据的话,虽然是没有结果集,返回false,但是却能成功的插入一条数据
                boolean execute = preState.execute();
                System.out.println(execute);
    
                //第五步:处理结果集
                while (resultSet.next())
                {
                    int id = resultSet.getInt("id");
                    String name = resultSet.getString("name");
                    String city = resultSet.getString("city");
                    System.out.println(id+"   "+name+"   "+city);  //打印输出结果集
                }
            } catch (Exception e) {
                e.printStackTrace();
            }finally {
                //第六步:关闭资源
                    try {
                        if (resultSet!=null) resultSet.close();
                        if (statement!=null) statement.close();
                        if (connect!=null) connect.close();
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
            }
        }
    }
  • 相关阅读:
    预习作业一
    20145234黄斐《java程序设计基础》第一周
    预习作业3
    开源 人脸识别 openface 实用介绍 实例演示 训练自己的模型
    ubuntu 开机 输入密码 无法进入
    linux anaconda 管理 python 包
    如何从零开始做一个蓝牙机械键盘
    keil中结构体跨文件调用
    GPRS 通信
    如何查找EI 及SCI 索引
  • 原文地址:https://www.cnblogs.com/judewu/p/7929620.html
Copyright © 2020-2023  润新知