JDBC学习浅显易懂篇


前言

数据库是一个独立的程序,Java应用程序也是一个独立的程序,那么两者之间如何实现联系呢?这里我们使用JDBC来实现。


提示:以下是本篇文章正文内容,下面案例可供参考

二、怎么实现连接?

1.实现JAVA与数据库的连接

1.1 首先我们得给数据库和Java应用程序两者之间搭建一个桥(数据库连接Connection),通过这座桥实现两者的沟通与信息交互。

1.2 那么谁来搭建这座桥呢?那得找只建筑队,在计算机中这个建筑队就是一个类(DriverManager),要完成具体得搭建工作,就必须要用这个类的方法getConnenction(建立连接所需要资源)来创建一个数据库连接。

实现:Connection conn = DriverManager.getConnection(url: 建立连接所需要的资源);

1.3 创建连接(桥)需要资源,那么需要的资源是哪些呢?url所指的资源就是我们需要的资源,这里我举一个例子:假设MySQL的用户名为root,密码为123456,数据库名为:student 则

String username = "root";
String userpwd = "123456";
String dbname = "student";
String  url1="jdbc:mysql://localhost:3306/"+dbname;
String url2 ="?user="+username+"&password="+userpwd;
String url =url1+url2; 
Connection conn=DriverManager.getConnection(url); //创建连接对象(创建桥)            

url对应起来:

jdbc:mysql://主机名称:mysql服务端口号/数据库名称?参数=值&参数=值

jdbc:mysql分别是是协议和子协议。

1.4 那么怎么找到建筑队(DriverManager)? 我们通过一个管理建筑队的机构来找到建筑队(DriverManager)。在电脑上这个管理机构称为驱动程序java.sql.Driver 而获取建筑队就是加载驱动程序

Class.forName(com.mysql.jdbc.Driver);

其中, com.mysql.jdbc.Driver为MySQL连接的驱动程序。

为了处理以上问题,各个数据库开发商,针对自己的数据系统,专门开发了一套实现Java与数据库之间交互的驱动程序包。例如,对于MySQL数据库,其驱动程序包为:mysql-connector-java-5.1.47-bin。在使用的时候我们将这个包加到我们的项目中去。

通过前面几步我们已经将数据库与MySQL建立的连接,代码演示

建立数据库的连接的关键代码段如下://
   String driverName = "com.mysql.jdbc.Driver";         //驱动程序名
   String userName = "root";                            //数据库用户名
   String userPwd = "123456";                           //密码
   String dbName = "students";                           //数据库名
   String  url1="jdbc:mysql://localhost:3306/"+dbName;
   String url2 ="?user="+userName+"&password="+userPwd;
   String  url3="&useUnicode=true&characterEncoding=UTF-8";//访问数据库的汉字编码
   String url =url1+url2+url3;        //形成带数据库读写编码的数据库连接字
   Class.forName(driverName);                  //加载并注册驱动程序
   Connection conn=DriverManager.getConnection(url);  //创建连接对象

2.连接之后两者之间信息交换的实现

2.1 通过前面的工作我们已经有了数据库连接对象“桥” conn,那么如何在桥的两端实现信息传递呢?即来回运输物资。我们可以造一辆车在桥上面来回运输信息,在计算机上我们称这辆车为数据库操作对象。

Statement stmt = conn.createStatement(); //在桥conn上直接造一辆汽车

那么车具体运输什么呢?运输sql语句和执行结果!对于数据库操作通常有两种类型,一种是查询数据库,另一种是更新数据库(增,删,改)。

1)查询数据库操作实现//
    String sql="selectname from stu";//查询SQL语句
    ResultSet rs=stmt.executeQuery(sql);  //执行查询SQL语句,并得到查询结果集合2)更新数据库(添加、删除、修改)操作实现//
    String sql2=“delete  stu”;         //删除记录SQL语句
    int n=stmt.executeUpdate(sql2);  //执行删除SQL语句,并返回实际删除记录的条数 

2.2 注意上面我是先造车,然后再把要运输的东西搬到车上运输。那么我们可不可以一边造车一边把要运输的东西搬到车上呢?当然可以!

1)查询数据库操作实现//
  String sql="select xh,name,cj from stu where cj>=60 and cj<=80" //查询SQL语句
  PreparedStatement pstmt= conn.prepareStatement(sql);
  RrsultSet rs=pstmt.executeQuery(); //执行,得到查询结果集合,注意,这里是空参数2)更新数据库(添加、删除、修改)操作实现//
    String sql2=“delete stu where cj>=60 and cj<=80;         //删除记录SQL语句    
    PreparedStatement pstmt= conn.prepareStatement(sql2);
    int n=pstmt.executeUpdate();  //执行,返回实际删除记录的条数,注意,这里是空参数

总结

这就是大概的原理,具体方法的细节可以看一下这篇博客

JDBC学习

猜你喜欢

转载自blog.csdn.net/inspireT/article/details/124406607