栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JDBC连接数据库

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JDBC连接数据库

JDBC编程六步

第一步:注册驱动(作用:告诉Java程序,即将要连接的是哪个品牌的数据库)

第二步:获取连接(表示JVM的进程和数据库进程之间的通道打开了,这属于进程之间的通信,重量级的,使用完之后一定要手

第三步:获取数据库操作对象(专门执行sql语句的对象)

第四步:执行SQL语句(DQL DM....)


第五步:处理查询结果集(只有当第四步执行的是select语句的时候,才有这第五步处理查询结果集。)

第六步:释放资源(使用完资源之后二定要关闭资源。Java和数据库属于进程间的通信,开启之后一定要关闭。) 

首先我们新建一个空的项目工程
 

 

然后我们建一个模块

 点击java,直接点击下一步

然后在jdbc项目下右键新建一个目录

 

把mysql的jar包复制过来
这个jar包如何下载,上一个博客已经讲过了,详细的可以去看一下。然后我们还得引入jar包,详细也是在上一个博客。

然后咱就可以来连接数据库了。

  //1.注册驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
  第二步:获取连接
            String url="jdbc:mysql://localhost:3306/mysql?useUnicode=true&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8";
String user="root";
String password="149636";
            Connection conn= DriverManager.getConnection(url,user,password);
//            这里我们输出数据库连接对象看看是这样的,com.mysql.cj.jdbc.ConnectionImpl@531be3c5。
            System.out.print("数据库连接对象="+conn);
//            3.获取操作库对象
            Statement stat=conn.createStatement();


 

 

//            4.执行sql
            String sql="insert into student(id,username,password) values(2,'张三','123')";
//            专门执行DML语句的(insert,delete,update),返回值是影响数据库中的记录条数
            int count=stat.executeUpdate(sql);
System.out.print(count==1?"保存成功":"保存失败");

 

//        6.释放资源,为了保证资源一定释放,在finally语句块中关闭资源,并且要遵循从小到大依次关闭(比如这里要先关闭stat,再关闭conn)
//        再分别对其trycatch
        finally{
            try {
                if(stat!=null){
                    stat.close();
                }

            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if(conn!=null){
                    conn.close();
                }

            } catch (SQLException e) {
                e.printStackTrace();
            }
}

 整体代码:

package com.jdbc;

import java.sql.*;

public class text01 {
    public static void main(String[] args) {
        Statement stat=null;
        Connection conn=null;
        try {
           //1.注册驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
//            第二步:获取连接
            String url="jdbc:mysql://localhost:3306/test01?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8";
String user="root";
String password="149636";
           conn= DriverManager.getConnection(url,user,password);
//            这里我们输出数据库连接对象看看是这样的,com.mysql.cj.jdbc.ConnectionImpl@531be3c5。
            System.out.print("数据库连接对象="+conn);
//            3.获取操作库对象
            stat=conn.createStatement();
//            4.执行sql
            String sql="insert into student(id,username,password) values(2,'张三','123')";
//            专门执行DML语句的(insert,delete,update),返回值是影响数据库中的记录条数
            int count=stat.executeUpdate(sql);
System.out.print(count==1?"保存成功":"保存失败");
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }
//        6.释放资源,为了保证资源一定释放,在finally语句块中关闭资源,并且要遵循从小到大依次关闭(比如这里要先关闭stat,再关闭conn
//        再分别对其trycatch
        finally{
            try {
                if(stat!=null){
                    stat.close();
                }

            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if(conn!=null){
                    conn.close();
                }

            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

注意,因为我这里执行的mysql语句是插入语句,所以不需要执行第五步。
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/880753.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号