JDBC入门学习

由于在测试的过程中,需要在数据库中随机取一些值,然后就去研究了一下JDBC在Java中的应用。以下是初学者学习笔记。(使用Java作为编程语言,数据库是MySql。)

一、JDBC是什么

JDBC API是一个Java API,代表Java数据库链接,用来访问任何类型的表列数据。JDBC可用于:

  • 连接数据库
  • 创建SQL语句
  • 在数据库中执行SQL
  • 查看或修改数据库中的数据
二、JDBC如何使用
1.JDBC环境配置
  • 首先配置java环境,配置Java的操作这里就不多说了。
  • 下载JDBC的jar包,在MySql官网中就可以下载相应的包https://dev.mysql.com/downloads/connector/j/
  • 如果需要使用本地数据库,需要在本地建立一个数据库。
2.创建JDBC项目
  • 创建一个类来打开关闭数据库

    //导入所需的JDBC包,也可以使用 import java.sql.*
    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;
    
    public class DataHelper {
    //设置需要连接的数据地址、用户名、密码(建议用户名、密码写在本地的配置文件中,以防止密码泄露)
    public static String dataBaseUrl = "jdbc:mysql://127.0.0.1/";
    public static final String name = "com.mysql.cj.jdbc.Driver";
    public static String user = "root";
    public static String password = "123456";
    
    //定义Connection对象
    public Connection conn = null;
    //定义PreparedStatement对象
    public PreparedStatement pst = null;
    
    public DataHelper(String sql){
       try {
        //初始化驱动程序,打开与数据库的通信,使用以下代码
           Class.forName(name);
           //打开连接,使用DriverManager.getConnection()方法创建connection对象,代表数据库的物理连接
           conn = DriverManager.getConnection(dataBaseUrl,user,password);
           //执行查询,使用类型为PrepareStatement的对象,提交一个SQL语句到数据库执行查询
           pst = conn.prepareStatement(sql);
       }catch (Exception e){
           e.printStackTrace();
       }
    }
    
    //清理环境资源,操作数据库的数据后,关闭所有数据库资源以减少资源的浪费
    public void close(){
       try {
           this.conn.close();
           this.pst.close();
       }catch (SQLException e){
           e.printStackTrace();
       }
    }
  • 创建一个类来执行相关操作(以最简单的查询为例)

    import com.mingyizhudao.qa.common.KnowledgeBase;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.HashMap;
    
    public class InquireData {
      static String sql = null;
      static DataHelper db1 = null;
      static ResultSet ret = null;
    
    //定义一个查询的方法
      public static void getData(String sql, int firNum, int SecNum){
          //创建DataHelper对象
          db1 = new DataHelper(sql);
          try {
              //执行语句
              ret = db1.pst.executeQuery();
              //得到结果,依次打印
              while (ret.next()){
                  String id = ret.getString(firNum);
                  String name = ret.getString(SecNum);
                  System.out.println( id + name)
              }
              //关闭连接
              ret.close();
              db1.close();
          }catch (SQLException e){
              e.printStackTrace();
          }
      }
    
      //输入需要查询的语句,得到查询的结果
      public static void main(String[] args){
          sql = "SELECT * FROM doctor_kb.doctor where mobile like '%9999';
          getData(sql, 1, 2);
      }
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值