阅读量:0
一.jdbc的概述:
在开发过程中我们使用的shijava语言,那么肯定是要通过java语言操作数据库。
1.1jdbc的概念
JDBC是java来执行sql语句的AplJDBC是java访问数据库的标准规范,可以对多种关系类型的数据库进行统一的访问;它是有java语言编写的接口和类组成。
JDBC是接口,由数据库生产生产厂商提供的实现类被称为驱动。
1.2 JDBC的组成;
接口规范;一开始有很多的数据库他们是不统一的每个数据库都有自己的接口,这样子就显得很麻烦;最后sum公司出手了他制订了java程序连接各种数据库的统一接口规范。这样的话,不管是链接哪一种数据库,java代码都可以保持一致性。
实现规范:因为各个数据厂商的的软件各有不同,那么各自的内部如何通过sql实现增删改等操作管理数据库,只有这个数据库厂商自己更清楚,因此接口规范就交给数据库厂商自己实现。
厂商实现内容和过程封装成jar文件,我们程序员只需要将jar文件引入到项目中集成即可,就可以开发调用实现过程的操作数据库了。
二.JDBC快数入门;
准备一下自己的数据库
1.2官网下载数据库连接连接驱动jar包:MySQL :: Download MySQL Connector/J (Archived Versions)
穿件java项目,在项目下创建lib文件夹,将下载的驱动jar包复制到java项目下lib里面;
选中复制到lib文件夹里面的jar包,右键找到--->Add as Library,点击什么都不用管点OK就好,
与项目集成。
package JavaJdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; /** * /** * JDBC API中的核心类和接口 * DriverManager(类): 用于注册驱动和获取连接 * Connection(接口): 表示与数据库创建的连接 * Statement(接口): 执行SQL语句的对象 * ResultSet(接口): 结果集或一张虚拟表 * * * 以上接口由MySQL驱动程序jar包,提供实现类 * * * JDBC开发步骤 ,固定步骤 6个 (模版) * 1.注册驱动 * 2.获得连接对象 * 3.获得执行sql语句的对象 * 4.执行SQL语句,获取结果集对象 * 5.处理结果集 (打印控制台) * 6.释放资源 **/ public class JDBC3 { public static void main(String[] args)throws Exception { //注册驱动 Class.forName("com.mysql.cj.jdbc.Driver"); //2。获得连接对象 String url = "jdbc:mysql://localhost:3306/day7-16";//连接数据库的地址:我的是连接day7-16 String username="root";//填写数据库的用户名 String password="G20030718";//数据库密码 Connection conn = DriverManager.getConnection(url, username, password); //获取执行sql语句的对象 Statement state = conn.createStatement(); //修改数据 String query ="update tab_User set nickname='蟹老板' where id='1';"; //删除数据 String ques = "delete from tab_User where id='4'"; //添加数据 String sql="insert into tab_User values (null,'zhaoliu','238761','张三')"; //查看数据: String sql1 ="select * from tab_User where nickname='张三' and password = '123456'"; //影响行数:注意:executeUpdate() 增删改 executeQuery() 查询 int i = state.executeUpdate(ques); int i1 = state.executeUpdate(query); int i2 = state.executeUpdate(sql); ResultSet resul = state.executeQuery(sql1); // 处理结果集 if(i>=1){ System.out.println("修改成功"); }else{ System.out.println("修改失败"); } if(i1>=1){ System.out.println("删除成功"); }else{ System.out.println("删除失败"); } if(i2>=1){ System.out.println("添加成功"); }else { System.out.println("添加失败"); } if(resul.next()){ System.out.println("查询成功"); }else{ System.out.println("查询失败"); } //释放资源: resul.close(); state.close(); conn.close(); } }