Learning Lift

学习Java的日常

日期:2019-8-19
day7: 学习目的:java连接数据库基本操作
​ 1.JDBC基本概念

​ 2.快速入门

​ 3.对JDBC中各个接口和类的详解

1.概念:Java Database Connectivity java数据库连接

本质:其实是官方(SUN公司)提供的一套操作所有关系型数据库的规则(接口),各个数据库厂商会去实现这套接口,产生数据库驱动(Jar包),我们可以使用这套接口(JDBC)编程,真正执行的代码驱动包里的实现类。

2.快速入门

​ 1.导入jar包 mysql-connector-java-5.1.37-bin.jar

​ 1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下

​ 2.右键–Add as Library

​ 2.注册驱动

DriverManager对象

​ 功能

​ 注册驱动:告诉程序使用哪一个数据库驱动

​ 源码调用了静态代码块,也就是说驱动注册随着类的加载而加载

​ 获取数据库连接

​ url:指定连接的路径

​ jdbc:mysql://localhost:3306/db4

​ 语法 jdbc:mysql://ip地址(域名):3306/数据库名称

如果连接本地的sql服务器,可省略 jdbc:mysql:///db4

​ user:用户名

​ password:密码

Connection对象

​ 数据库连接对象

​ 功能:

​ 1.获取执行sql的对象(Statement)

​ 2.管理事务

​ 3.获取Connection对象

​ 4.定义sql

​ 5.获取执行sql语句的对象 Statement

Statement对象 执行sql的对象

​ 功能

​ 1.执行sql

​ boolean execute():可以执行所有sql语句

​ int executeUpdate():执行DML(insert,update,delete)语句和DDL(create,alter,drop)语句

​ 返回值是影响的行数

​ int executeQuery():DQL(select)语句

​ 6.执行sql,接受返回结果

​ 7.处理结果

​ 8.释放资源

3.练习

​ 1.给student表插入一条新数据

​ 2.删除

import com.mysql.jdbc.log.NullLogger;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Jdbc {
    public static void main(String[] args){
        //1.导入jar包
        //2.注册驱动
        Connection conn = null;
        Statement stat=null;
        int count = 0;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/java", "root", "123456");
            //4.定义sql
            String sql = "update student set age=20 where id=1";
            //5.获取执行sql语句的对象 Statement
            stat = conn.createStatement();
            //6.执行sql,接受返回结果
            System.out.println(count);
            count = stat.executeUpdate(sql);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        //3.获取数据库连接对象Connection
        catch (SQLException e) {
            e.printStackTrace();
        }
        //7.处理结果

        //8.释放资源
        finally{
            if(stat!=null)
            {
                try{
                    stat.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if(conn!=null)
            {
                try{
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值