1 JDBC介绍 1. 什么是JDBCJDBC就是Java对外提供的一种规范JDBC的目的就是让Java语言可以和数据库进行交互完成CRUD2. JDBC的核心思想JDBC是个规范Java就对外发布了这个规范如果各个数据库厂商想让你的数据库可以和Java进行交互数据库厂商就需要根据JDBC的规范去做具体的实现提供一个驱动Driver2.1. JDBC API3. JDBC开发步骤3.1 构建项目3.2 导入依赖第一步先将jar文件copy到项目的所在目录下.第二步需要将这个jar包添加到工程中第三步随便搞一个测试类看一下Driver类有没有MySQL提供的驱动3.3 编写开发过程3.3.1 注册驱动// 本质就是将Driver类构建好对象并且封装好将封装好的Driver对象扔到DriverManager类中的一个List集合中Class.forName(com.mysql.cj.jdbc.Driver);3.3.2 建立连接ConnectionconnDriverManager.getConnection(jdbc:mysql://localhost:3306/test?characterEncodingutf-8,root,root);3.3.3 获取发送SQL的对象Statementstatementconn.createStatement();3.3.4 执行SQLStringsqlinsert into account (id,name,money) values (5,赵六,9999);intcountstatement.executeUpdate(sql);3.3.5 处理结果if(count1){System.out.println(当前操作成功);}3.3.6 释放资源statement.close();conn.close();3.3.7 完整操作importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLException;importjava.sql.Statement;/** * 在当前类中完成最基本的和MySQL交互。 * 完成一个添加操作。 */publicclassDemo1{publicstaticvoidmain(String[]args)throwsClassNotFoundException,SQLException{// ### 3.3.1 注册驱动// 本质就是将Driver类构建好对象并且封装好将封装好的Driver对象扔到DriverManager类中的一个List集合中Class.forName(com.mysql.cj.jdbc.Driver);// ### 3.3.2 建立连接ConnectionconnDriverManager.getConnection(jdbc:mysql://localhost:3306/test?characterEncodingutf-8,root,root);// ### 3.3.3 获取发送SQL的对象Statementstatementconn.createStatement();// ### 3.3.4 执行SQLStringsqlinsert into account (id,name,money) values (5,赵六,9999);intcountstatement.executeUpdate(sql);// ### 3.3.5 处理结果if(count1){System.out.println(当前操作成功);}// ### 3.3.6 释放资源statement.close();conn.close();}}3.4 常见错误4. ResultSet结果集1.查询操作返回的就是一个虚拟表查询之前test库中的account表2.首先在执行查询的select的SQL语句时需要使用的是statement提供的executeQuery方法3.其次在执行executeQuery方法后返回的是一个ResultSet结果集相当于查询的数据内容1.针对ResultSet的操作。首先要记住ResultSet的next方法2.next方法类似一个指针每次next指针都会移动到下一行。如果下一行有数据next方法会返回true如果下一行没数据next方法会返回false。PsResultSet第一次执行next指针才会指向第一行。在指针指向某一个行之后可以再基于ResultSet提供的getXxx方法获取对应列的数据获取对应列的方式可以通过序号来找从1开始但是推荐使用列名去找具体数据。importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;/** * 查询account表获取返回的结果集ResultSet */publicclassDemo2{publicstaticvoidmain(String[]args)throwsException{//1、注册驱动Class.forName(com.mysql.cj.jdbc.Driver);//2、获取连接ConnectionconnDriverManager.getConnection(jdbc:mysql://localhost:3306/test?characterEncodingUTF-8,root,root);//3、获取StatementStatementstatementconn.createStatement();//4、执行查询的SQLStringsqlselect * from account;ResultSetrsstatement.executeQuery(sql);//5、操作ResultSet结果集//5.1 先用ResultSet的一个next方法确认是否有返回的数据while(rs.next()){// 如果进到while循环说明有数据// 5.2 基于ResultSet提供的get类型方法去获取结果longidrs.getLong(id);Stringnamers.getString(name);longmoneyrs.getLong(money);System.out.println(获取数据idnamemoney。);}// 到这说明指针已经到最后了没有数据了。//6、释放资源rs.close();statement.close();conn.close();}}