mysql的驱动包 mysql-connect-java

  1. 内部封装了jdbc:
  • jdbc(java database connectivity):本身是由一组接口组成 , 可以使得Java编译来访问各种数据库
  • 无需自己实现接口,这些接口的实现类由第三方数据库厂商实现

jdbc的核心

接口或类 作用
DriverManager类 创建数据库的连接
Connection 接口 创建一个连接对象
Statement 接口 代表一条发送给服务器的sql语句
ResultSet接口 代表从服务器返回的查询结果集
  1. jdbc四个参数

    • 用户名
    • 密码
    • 驱动类的全名 : com.mysql.jdbc.Driver
    • 连接字符串的url : mysql8.0以前 jdbc:mysql://真实ip:3306/database_name mysql8.0以后:jdbc:mysql://真实ip:3306/database_name?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=true

DriverManager 类 ,Connection接口 ,Statement接口

DriverManager类

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
/**
运行这一段要求:
1.导入对应数据库版本的mysql-connector-java 包
2.url要对应数据库版本的书写
**/
public class Demo01Jdbc {public static void main(String[] args) throws SQLException {//mysql8.0以后使用的urlString url = "jdbc:mysql://localhost:3306/database_name?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=true";Connection connection = DriverManager.getConnection(url, "root", "root");System.out.println(connection);//DriverManager内部静态方法
//  public static Connection getConnection(String url, java.util.Properties info)
//  public static Connection getConnection(String url,String user, String password)
//  public static Connection getConnection(String url)
//properties方式连接
//之所以可以使用properties是因为在DriverManager.getConnection()中也是创建properties对象
//只这里的properties对象通过setProperties()重新设置的键值对元素
//而getConnection()中设置好了键元素,只要求用户传入值即可Properties properties = new Properties();properties.setProperty("user","root");properties.setProperty("password","root");Connection connection1 = DriverManager.getConnection(url, properties);System.out.println(connection1);}
}


  • 为了切合java思想可以将封装为:
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;public class JDBCLink {//连接本地jdbc:mysql://localhost:3306/database_name?...    可以省略为jdbc:mysql:///database_name?...private static final String url = "jdbc:mysql:///database_name?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=true";private static final String user = "root";private static final String password = "root";public static Connection connection;public static Connection getConnection() {return connection;}/**开始连接**/public static void startLink(){try {connection = DriverManager.getConnection(url, user, password);System.out.println(connection);} catch (SQLException throwables) {throwables.printStackTrace();}}/**结束释放资源**/public static void end(){try {connection.close();} catch (SQLException throwables) {throwables.printStackTrace();}}
}

Statement接口

接口中的方法 描述
boolean execute(String sql) 执行任意sql语句,如果返回一个resultSet对象,则表示true,如果返回更新数或不存在任何结果,则为false
int executeUpdate(String sql) 用于执行增删改,返回受影响的行数
ResultSet executeQuery(String sql) 用于执行查询操作,查询到的结果集

创建表格:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;public class Demo2DDL {public static void main(String[] args) throws SQLException {String sql = "create table stu(id int primary key auto_increment,name varchar(20) not null,sex boolean,birthday date)";JDBCLink.startLink();Connection connection = JDBCLink.getConnection();Statement statement = connection.createStatement();statement.execute(sql);statement.close();JDBCLink.end();System.out.println("创建表成功");}
}

插入数据:

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class Demo02Insert {public static void main(String[] args) throws SQLException {JDBCLink.startLink();Connection connection = JDBCLink.getConnection();Statement statement = connection.createStatement();//更新和删除同样在这里操作int row = statement.executeUpdate("insert into stu (name,sex,birthday) values ('张三',1,'1999-2-10')," +"('李四',1,'1999-2-10'),('王五',1,'1999-2-10'),('赵六',1,'1999-2-10')");System.out.println(row);statement.close();JDBCLink.end();}
}

对应stu表的实体类:


import java.util.Date;
public class Stu {private int id;private String name;private boolean sex;private Date birthday;public Stu() {}public Stu(int id, String name, boolean sex, Date birthday) {this.id = id;this.name = name;this.sex = sex;this.birthday = birthday;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public boolean isSex() {return sex;}public void setSex(boolean sex) {this.sex = sex;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}@Overridepublic String toString() {return "Stu{" +"id=" + id +", name='" + name + '\'' +", sex=" + sex +", birthday=" + birthday +'}';}
}

查询:


import com.pojo.Stu;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.LinkedList;public class Demo03Select {public static void main(String[] args) throws SQLException {JDBCLink.startLink();Connection connection = JDBCLink.getConnection();Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery("select * from stu");LinkedList<Stu> stus = new LinkedList<>();Stu stu = new Stu();while (resultSet.next()){stu.setId(resultSet.getInt("id"));stu.setName(resultSet.getString("name"));stu.setSex(resultSet.getBoolean("sex"));stu.setBirthday(resultSet.getDate("birthday"));stus.add(stu);}for (Stu stus1 : stus) {System.out.println(stus1);}statement.close();JDBCLink.end();}
}

mysql 驱动包 mysql-connect-java相关推荐

  1. java jdbc(mysql)驱动源码分析,JAVA JDBC(MySQL)驱动源码分析(四)

    connect方法是java.sql.Driver接口中定义的方法,如果连接的数据库不同,那么为不同的数据库编写JDBC驱动将变得很灵活,实现Driver接口即可.连接数据库时首先得装载JDBC驱动, ...

  2. Java中使用mysql驱动连接mysql以及mysql的安装

    好久不见,随着Java课程的推进小编其实也在不断的学习之中,同时也遇到很多问题,下面就由小编为大伙们详细的说一下Java中使用mysql驱动连接mysql数据库以及mysql的安装以及使用数据库连接池 ...

  3. 引入MySQL驱动包进行JDBC编程

    文章目录 1.什么是JDBC 2.创建JDBC项目的步骤-MySQL版本 1.什么是JDBC 每个数据库都会提供一组API来支持程序员实现自己客户端,自己根据需求来完成一些具体的增删查改的功能.但数据 ...

  4. 下载MySQL驱动包,并导进idea

    操作MySQL就需要下载Mysq 驱动包 Mysql驱动包可以去"中央仓库"下载: 打开"中央仓库",可能会等待+验证是否为人机: 进行搜索,找到[MySQL ...

  5. 关于javaweb连接mysql数据库mysql驱动包存放路径的问题

    首先,先看看别人怎么解释的:https://www.cnblogs.com/guoxh/p/6550234.html 初学JAVA,很多都不懂,开始听老师说导入数据库驱动包的时候是: 右键项目 -&g ...

  6. eclipse中导入mysql 驱动包 jar包

    鼠标选中项目名→右键→新建→文件夹(文件夹名称:lib)→将下载好的mysql驱动包粘贴到lib文件夹中→鼠标选中lib文件夹下的mysql驱动包→右键→构建路径→添加至构建路径. 完成以上操作后会发 ...

  7. mysql 驱动包 bin 的意思_mysql连接数据库,用下面代码,为什么找不到驱动呢?? lib下是mysql-connector-java-5.1.15-bin.jar...

    //你的头文件中有什32313133353236313431303231363533e59b9ee7ad9431333433626435么我不知道,我在调试的是下面4行import java.sql. ...

  8. jdbc连接mysql驱动包_jdbc连接数据库驱动包

    FineReport如何用JDBC连接阿里云ADS数据库 在使用FineReport连接阿里云的ADS(AnalyticDB)数据库,很多时候在测试连接时就失败了.此时,该如何连接ADS数据库呢? 我 ...

  9. 在eclipse上连接mysql数据库时mysql驱动包的路径问题

    今天在学习使用eclipse连接mysql数据库时,发现下载的mysql-connector-java-8.0.20.jar在测试的过程中无法连接数据库,这个问题我觉得主要是jar存放的路径问题,于是 ...

  10. spoon mysql驱动包下载_spoon(kettle)基本配置(连接Mysql和Oracle)

    1.下载spoon包和驱动 可以去spoon官网下载需要的spoon版本 我所使用的spoon包,包括spoon7.1.Mysql驱动和Oracle驱动,链接:https://pan.baidu.co ...

最新文章

  1. 《强化学习周刊》第35期:强化学习在智能交通中的最新应用
  2. Spring Boot 数据库连接池入门
  3. 为什么我不信任通配符,以及为什么我们仍然需要通配符
  4. AndroidStudio_开发工具的设置_快捷键设置_编辑器设置---Android原生开发工作笔记72
  5. 西门子S7-1200的PID应用(恒温热水器)
  6. 自动采集小说程序源码
  7. Rhadoop的安装
  8. cad等比例缩放快捷键_终于领会CAD缩放(放大与缩小)快捷键
  9. ORA-01045 :user 用户名 lacks create session privilege; logon denied
  10. 测试apk-异常管控NetTraffic攻击者开发
  11. 计算机二级oracle,关于计算机考试
  12. Vue3中watch和watchEffect监听的用法
  13. 基于Linux+ARM的远程视频监控--系列开题
  14. android 蓝牙无法连接,无法通过蓝牙连接
  15. 易用CAD看图软件怎么进行切换建筑图纸的三维导航模式?
  16. DDD 兴起的原因以及与微服务的关系
  17. Android Studio NKD开发之 FFmpeg库的引入--简单播放器(主要验证是否正确引入ffmpeg库)
  18. 微信公众号之微信支付(V3版)jsp页面jsapi统一下单调启支付(java版)
  19. python 绘图类_关于创建自定义绘图对象-python中的类,有很好的教程吗? - python...
  20. 在CodeBlocks中完美使用WTL进行开发

热门文章

  1. 浅谈VMD---变分模态分解
  2. 好书推荐:浪潮之巅(第四版)
  3. CNDS-markdowm使用方法(^ _ ^)
  4. 前端页面调试、抓包工具——spy-debugger
  5. Effective Modern C++42招独家技巧助你改善C++11和C++14的高效用法笔记
  6. 《JAVA程序设计教程(第7版)英文版》pdf 附下载链接
  7. 数字时钟仿真电路设计
  8. 【MFC教程】利用向量创建MFC
  9. CPT104 计算机操作系统概念笔记
  10. 嵌入式Linux移植lvgl,Linux 下使用fb 移植lvgl详细教程