JDBC学习1

JDBC

概念

Java DataBase Connectivity Java 数据库连接, Java语言操作数据库

JDBC本质:

其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。

各个数据库厂商去实现这套接口,提供数据库驱动jar包。

我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。

快速入门

  1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
  • 复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
  • 右键–>Add As Library
  1. 注册驱动
  2. 获取数据库连接对象 Connection
  3. 定义sql
  4. 获取执行sql语句的对象 Statement
  5. 执行sql,接受返回结果
  6. 处理结果
  7. 释放资源
package cn.itcast.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

/* jdbc快速入门*/
public class jdbcDemo1 {
   
    public static void main(String[] args) throws Exception {
   
        //1.导入驱动jar包
        //2.注册驱动  mysql5之后驱动可以不写,会自动注册驱动
        //Class.forName("com.mysql.jdbc.Driver");
        //3.获取数据库连接对象
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db1", "root", "root");
        //4.定义sql语句
        String sql = "update account set balance = 500 where id = 1";
        //5.获取执行的sql对象 Statement  conn.createstatement()
        Statement stmt = conn.createStatement();
        //6.执行sql对象   stmt.excuteupdate(string sql)
        int count = stmt.executeUpdate(sql);
        //7.处理结果
        System.out.println(count);
        //8.释放资源
        stmt.close();
        conn.close();

    }

}

详解各个对象

1.DriverManager:驱动管理对象

1.作用一:注册驱动(一般不用)

|返回值 | 方法介绍 | 方法介绍 |
static void | registerDriver(Driver driver) | 注册驱动|
使用static void registerDriver(Driver driver) 可以帮我们完成驱动的注册,但是开发中我们一般都不用,因为使用这个方法就会导致驱动被注册两次.
写代码使用:Class.forName("com.mysql.jdbc.Driver");
在代码中有一段静态代码块,静态代码块已经调用了注册驱动的方法。如果再手动调用该方法注册驱动,就会导致驱动被注册两次.所以mysql5 之后可以不手动注册驱动

static {
   
    try {
   
        DriverManager.registerDriver(new Driver());
    } catch (SQLException var1) {
   
        throw new RuntimeException("Can't register driver!");
    }
}
作用二:获取数据库连接
  • 方法
  • 使用static Connection getConnection(String url, String user, String password)可以帮我们获取与数据库的连接

这个方法中有三个参数:

  • url :与数据库连接的路径
  • 语法jdbc:mysql://ip地址:端口/数据库名称
  • "jdbc:mysql://localhost:3306/db1"
  • url如果连接的是本机的路径,并且默认端口为3306,可以简化为如下格式:jdbc:mysql:///db1
  • user :与数据库连接的用户名

  • password :与数据库连接的密码

  • jdbc : 连接数据库的协议(固定)

  • mysql : 是jdbc的子协议

  • localhost : 连接的MySQL数据库服务器的主机地址。(连接是本机就可以写成localhost),如果连接不是本机的,就需要写上连接主机的IP地址。

  • 3306 :MySQL数据库服务器的端口号

  • :数据库名称

2.Connection:数据库连接对象

作用一: 获取执行SQL语句的对象
  • Statement createStatement() 获取执行SQL语句的对象
PreparedStatement	prepareStatement(String sql)

预编译SQL

作用二:管理事物
  • 开启事物 void setAutoCommit(boolean autoCommit) 调用该方法设置参数为false,即开启事物
  • 提交事务 void commit()
  • *回滚事务 void rollback()

3.Statement:执行sql的对象

作用一:执行SQL

1.boolean execute(String sql) 执行SQL语句
2.ResultSet executeQuery(String sql) 执行查询 DQL (select)语句
3.int executeUpdate(String sql) 执行增(insert),删(delete),改(update)DML语句, DDL(create,alter,drop)语句

**练习:account 添加一条记录
**

package cn.itcast.jdbc;
/*account表  添加一条记录 insert语句*/

import javax.swing.*;
import java.sql.Connection;
import java
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值