12、oracle JDBC技术

JDBC技术

什么是jdbc?

是Java Database Connectivity 简称JDBC,是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中的数据的方法。是面向关系型数据库的。

为了规范数据库,要想数据库使用Java代码,数据库厂家就必须实现Java接口中的方法。

在java.sql包中提供了很多接口。

例如:java.sql.Driver 用来加载驱动,DriverManager创建连接()

java.sql.Connection 用来连接数据库的

java.sql.Statement 静态的编译和发送sql语句,静态处理块

java.sql.PreparedStatement 动态的发送sql语句

java.sql.ResultSet 获取sql语句的返回结果集

java.sql.ResultSetMetaData -->结果集元数据

JDBC 的创建步骤

  1. 导入jar

    D:\develop\oracle\product\11.2.0\dbhome_1\jdbc\lib 安装路径找

  2. 加载驱动

    oracle: 加载类:oracle.java.driver.OracleDriver

    class.forName("oracle.java.driver.OracleDriver");

  3. 创建连接

    必须要有url,username,password

    url: jdbc:oracle:thin:@localhost:1521:orcl

    orcl:是数据库实例名

    username:用户名

    password:密码

    Connection conn = DriverManager.getConnection();

  4. 创建statement(静态处理块)

    Statement stmt = conn.createStatement();

  5. 执行sql语句

    //使用select查询语句使用 stmt.excuteQuery(sql);

    //返回的是一个结果集 ResultSet

    String sql = "select * from emp" ;

    ResultSet set = stmt.executeQuery(sql);

    while(set.next()){

    ​ sout(set.getInt(1));//1代表是第一个字段

    ​ //也可以传进字段名

    ​ sout(set.getInt("ename"));

    }

    //执行DML语句使用 stmt.executeUpdata(sql);

    ​ 返回值为int类型,成功的条数。

    //执行DDL语句使用 stmt.execute(sql);

    ​ 返回的是Boolean类型,执行是否成功。

  6. 关闭资源

    //都是流对象

    stmt.close();

    conn.close();

    package day01.com.test02;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    public class JDBCUtils {
    public static Connection getConnection() throws ClassNotFoundException, SQLException {
    //1.加载驱动
    Class.forName("oracle.jdbc.driver.OracleDriver");
    //2.连接数据库
    Connection conn = DriverManager.getConnection
    ("jdbc:oracle:thin:@localhost:1521:orcl", "lgx", "123");
    return conn;
    }
    }
    --------------------------------------------------------------------------------
    package day01.com.test02;
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    public class Test {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
    //建立连接
    Connection conn = JDBCUtils.getConnection();
    //创建静态处理块 statement
    Statement stmt = conn.createStatement();
    //删除一条数据
    /* String sql = "delete from test where name = '张三1' ";
    int n = stmt.executeUpdate(sql);
    System.out.println(n);
    */
    //插入一条数据
    /* String sql = "insert into test values(60,'李四')";
    int n = stmt.executeUpdate(sql);
    System.out.println(n);
    */
    //修改一条数据
    /* String sql = "update test set name ='王五' where id = 20";
    int n = stmt.executeUpdate(sql);
    System.out.println(n);
    */
    //查询数据
    String sql = "select * from test ";
    ResultSet set = stmt.executeQuery(sql);
    while (set.next()) {
    // System.out.print(set.getInt(1));
    // System.out.println(set.getString(2));
    System.out.print(set.getInt("id"));
    System.out.println(set.getString("name"));
    }
    conn.close();
    }
    }
posted @   站着说话不腰疼  阅读(298)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示