JDBC的全查询

1 什么是JDBC

概念:Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序
如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun
Microsystems的商标。我们通常说的JDBC是面向关系型数据库的。
各数据库厂商根据JDBC的规范,实现自身数据库操作的功能代码,然后以jar包(数据库厂商提供的驱动
包)的形式提供给开发人员使用,开发人员使用反射的机制创建这些具体实现类,按照JDBC的规范来完
成数据库的操作。

 接口和JDBC规范的理解:

 2.先创建数据库

创建学生信息表

#设置数据的视图---使用数据库
use mydb;
#判断表存在就删除表
drop table if exists student;
#创建表
create table student
(
stuId int primary key auto_increment,
stuName varchar(20),
stuSex varchar(2),
stuAge int,
stuAddr varchar(50)
);

#插入测试数据
insert into student(stuName,stuSex,stuAge,stuAddr) values('张三','男',20,'河南');
insert into student(stuName,stuSex,stuAge,stuAddr) values('小美','女',18,'山东');
insert into student(stuName,stuSex,stuAge,stuAddr) values('Rose','女',19,'美国');
insert into student(stuName,stuSex,stuAge,stuAddr) values('Jack','男',21,'英国');
#查询数据表
select * from student;

2.1然后给给数据库赋一些属性(学生信息)

public class Student {
    //属性
    private int stuId;
    private String stuName;
    private String stuSex;
    private int stuAge;
    private String stuAddr;

    public void setStuId(int stuId) {
        this.stuId = stuId;
    }

    public int getStuId() {
        return stuId;
    }

    public void setStuName(String stuName) {
        this.stuName = stuName;
    }

    public String getStuName() {
        return stuName;
    }

    public void setStuSex(String stuSex) {
        this.stuSex = stuSex;
    }

    public String getStuSex() {
        return stuSex;
    }

    public void setStuAge(int stuAge) {
        this.stuAge = stuAge;
    }

    public int getStuAge() {
        return stuAge;
    }

    public void setStuAddr(String stuAddr) {
        this.stuAddr = stuAddr;
    }

    public String getStuAddr() {
        return stuAddr;
    }
}

JDBC全查操作

public class StudentTest {
  /**
   * JDBC连接数据库,需要配置四大参数,同时需要导入数据库对应的驱动包
  */
  private String driver="com.mysql.cj.jdbc.Driver";
  private String url="jdbc:mysql://127.0.0.1:3306/mydb?useSSL=false&serverTimezone=UTC";
  private String username="root";
  private String password="123";
  @Test
  public void testSelectAll() throws ClassNotFoundException, SQLException {
    //JDBC操作数据库的步骤
    //1.首先在项目根目录创建lib文件夹,放入jdbc驱动程序,然后Add As Library
    //2.加载数据库驱动
    Class.forName(driver);
    //3.使用驱动管理器来获得连接---获得一个数据库连接对象Connection
    Connection con=DriverManager.getConnection(url, username, password);  //
生成方法调用返回值的快捷键:ctrl + alt + v
    //4.使用Connection创建PreparedStatement预处理对象---PreparedStatement对象可以
执行带 ? 的sql语句
    String sql="select * from student";
    PreparedStatement pstm = con.prepareStatement(sql);
    //5.使用PreparedStatement对象执行SQL语句,获得ResultSet结果集对象
    ResultSet rs = pstm.executeQuery();
    //6.操作判断--增删改返回的是影响的行数(返回值是int),只有查询获得结果集(返回值
ResultSet)
    //让结果集的游标不断的往下移动,直到没有数据的时候结束循环
    List<Student> studentList=new ArrayList<>(); //定义集合(大的容器),用来装
Student对象(小容器)
    while(rs.next()){
      //根据字段名称获取表中的数据
      int stuId=rs.getInt("stuId");
      String stuName=rs.getString("stuName");
      String stuSex=rs.getString("stuSex");
      int stuAge=rs.getInt("stuAge");
      String stuAddr=rs.getString("stuAddr");
      //把以上数据封装到Student对象中
      Student student=new Student();   //一行数据就封装成了一个Student对象
      student.setStuId(stuId);
      student.setStuName(stuName);
      student.setStuSex(stuSex);
      student.setStuAge(stuAge);
      student.setStuAddr(stuAddr);
      //把当前行封装后的Student对象装载到 List集合中
      studentList.add(student);
   }
    System.out.println(studentList);
    //7.回收资源,先关闭rs结果集对象 再pstm预处理对象  最后con连接对象
    if(rs!=null){
      rs.close();
   }
    if(pstm!=null){
      pstm.close();
   }
    if(con!=null){
      con.close();
   }
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值