准备工作

  1. idea
  2. mysql 官方的 jdbc 驱动

先在 idea 中建立一个新的 java 工程

直到这一步之前,一直按下一步就行了


把名字改改直接 finish

在这个工程下面建立一个名字为 lib 的空文件夹

去官方下载依赖的包

https://dev.mysql.com/downloads/connector/j/

选择下面那个

下载之后,得到的是一个 zip 文件,把 zip 里面的东西解压到刚刚创建的 lib 文件夹中(记得先找到刚刚那个工程创建时设置的存放位置)


右键这个文件夹,选择下面蓝色的那个选项

然后在弹出的窗口中点击 ok

后面还会弹出一个窗口,也点击 OK ,就可以了

开始操作

先在 src 文件夹中建立 Java 类,然后开始操作

连接 mysql 和关闭连接

Connection 是 Java 中的一个类,专门用于和其他的东西进行连接

// 先引入需要的包
import java.sql.*;public class Exercise {public static void main(String[] args){// Connection 是 Java 中的一个类,专门用于和其他的东西进行连接Connection connect = null;try {// 加载驱动,固定语句// 使用这个必须处理异常Class.forName("com.mysql.jdbc.Driver");}catch (ClassNotFoundException e){System.out.println("Could not loading Driver");}try {// 下面这一行也是固定语句,getConnection括号里面的模式:// “jdbc:mysql://数据库的地址(mysql server 的地址)/数据库名字?(要mysql中操作的数据库的名字)”// 后面再 + 上用来登录的用户名和密码// 同时,使用这个函数,必须处理异常connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1/productdb?" + "user=root&password=123456");if (connect != null) {System.out.println("Connect successfully!");}} catch (SQLException e) { // 这个getConnection 规定必须抛出异常e.printStackTrace();}finally {try {// 关闭连接connect.close(); // 规定必须处理异常System.out.println("Shutdown connection successfully!");}catch (SQLException e){e.printStackTrace();}}}
}

不要这么早就被这么长的代码给劝退了,实际上不需要写这么多,因为 idea 会帮你自动补全很大一部分,catch 里面的东西我几乎就没写过,而且 catch 里面的大多数都是英文的字面意思

2022.4.10 4:12 pm 新增:

这种是老方法:Class.forName(“com.mysql.jdbc.Driver”);
如果使用这个加载驱动的话,会报这个错误:

Loading class com.mysql.jdbc.Driver'. This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

而且,在官方最新的文档中,也是使用下面这种方法进行连接
Class.forName(“com.mysql.cj.jdbc.Driver”);
在 mysql 和 jdbc 中间增加了一个 cj

使用 mysql 内的语句

使用 Statement 类的对象向 mysql 发送 sql 语句进行操作

使用 ResultSet 类的对象接收操作之后得到的结果

先上 mysql 的表

再进行操作

// 先引入需要的包
import java.sql.*;public class Exercise {public static void main(String[] args){// Connection 是 Java 中的一个类,专门用于和其他的东西进行连接Connection connect = null;// Statement 类的对象向 mysql 发送 sql 语句进行操作Statement stmt = null;// ResultSet 类的对象接收操作之后得到的结果ResultSet rs = null;try {// 加载驱动,固定语句// 使用这个必须处理异常Class.forName("com.mysql.jdbc.Driver");}catch (ClassNotFoundException e){System.out.println("Could not loading Driver");}try {// 下面这一行也是固定语句,getConnection括号里面的模式:// “jdbc:mysql://数据库的地址(mysql server 的地址)/数据库名字?(要mysql中操作的数据库的名字)”// 后面再 + 上用来登录的用户名和密码// 同时,使用这个函数,必须处理异常connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1/productdb?" + "user=root&password=123456");if (connect != null) {System.out.println("Connect successfully!");}try {// 先创造一个可以给 mysql 发送 sql 语句的stmt = connect.createStatement();// executeQuery 用于发送 sql 语句,括号内的就是 sql 语句rs = stmt.executeQuery("select * from user");// 输出数据的用法//rs.next(); 表示下一个得到的结果数据集,如果不为空,就继续输出// 每一次输出完之后,会自动切换到下一个数据集,相当于换行,select * from 表,这样操作一次看到结果// 的图就知道是为什么了while (rs.next()){// rs.get数据类型(括号内是列数(第 n 列))System.out.println(rs.getInt(1));System.out.println(rs.getString(2));System.out.println(rs.getString(3));System.out.println(rs.getString(4));System.out.println(rs.getString(5));System.out.println(rs.getString(6));System.out.println(rs.getTimestamp(7));System.out.println(rs.getDate(8));}}catch (SQLException e){ // 老规矩,必须处理异常e.printStackTrace();}} catch (SQLException e) { // 这个getConnection 规定必须处理异常e.printStackTrace();}finally {try {// 关闭连接connect.close(); // 规定必须处理异常System.out.println("Shutdown connection successfully!");}catch (SQLException e){e.printStackTrace();}}}
}

其他的 sql 语句也是同样的道理

在Java中操作MySQL(JDBC)相关推荐

  1. 第68节:Java中的MYSQL运用从小白到大牛

    第68节:Java中的MYSQL运用从小白到大牛 前言 学习java必备要求,学会运用!!! 常见关系化数据库 BootStrap是轻量级开发响应式页面的框架,全局css组件,js插件.栅格系统是将页 ...

  2. Java中的事务——JDBC事务和JTA事务

    转载自 Java中的事务--JDBC事务和JTA事务 我的博客中曾经关于事务有过很多讨论,之前的事务介绍基本都是数据库层面的事务,本文来介绍一下J2EE中和事务相关的内容,在阅读本文之前,希望读者对分 ...

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

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

  4. java 插入 mysql 乱码_解决java中插入mysql中文乱码的方法

    解决java中插入mysql中文乱码的方法 发布时间:2020-07-11 14:35:11 来源:亿速云 阅读:100 作者:清晨 这篇文章主要介绍解决java中插入mysql中文乱码的方法,文中介 ...

  5. java 中操作字符串都有哪些类?它们之间有什么区别?

    java 中操作字符串都有哪些类?它们之间有什么区别? String.StringBuffer.StringBuilder String : final修饰,String类的方法都是返回new Str ...

  6. openresty开发系列28--openresty中操作mysql

    openresty开发系列28--openresty中操作mysql Mysql客户端    应用中最常使用的就是数据库了,尤其mysql数据库,那openresty lua如何操作mysql呢?   ...

  7. Python中操作MySQL/Oracle

    Python中操作MySQL/Oracle 一.Python操作数据库介绍 二.Python操作MySQL 2.1 PySQL模块 2.1.1 安装PyMySQL 2.2 基本使用 2.3 获取最新创 ...

  8. python中的pymysql_(转)Python中操作mysql的pymysql模块详解

    原文:https://www.cnblogs.com/wt11/p/6141225.html https://shockerli.net/post/python3-pymysql/----Python ...

  9. node中操作MySQL

    node操作MySQL数据库: 在node中操作MySQL数据库的基本流程如下: // node操作MySQL需要在npm官网下载mysql包并载入node执行代码:// 1.载入MySQL数据库包v ...

最新文章

  1. ECS 备份数据到NAS(一):使用Windows Server Backup工具
  2. osgEarth3.0 加载天地图
  3. PAT甲级1068 Find More Coins (30 分):[C++题解]DP、背包问题、dp输出方案
  4. Java实现二分查找及其优化
  5. rrdtool zabbix mysql_MRTG、Cacti、Rrdtool、Nagios、Zabbix安装比较
  6. Linux 文件与目录管理、ls、cd、pwd、mkdir、rmdir、cp、 rm
  7. 英雄联盟与人生奋斗的类比讨论
  8. 如何改变Myeclipse编辑区背景色(转)
  9. 推荐系统-Task04前后端基础及交互
  10. 2021-06-24边框塌陷解决方案
  11. 如何使用JS实现页面内容随机显示
  12. 理解和使用 JavaScript 中的回调函数
  13. 用WPF实现屏幕文字提示,徐汇区网站设计
  14. OCR应用场景:票总管发票管理系统
  15. Win11系统安装教程 教你安装原版Win11系统
  16. python制作ppt_如何利用Excel与Python制作PPT
  17. 蓝牙耳机播放音频无声问题的解决方案
  18. 2021-2027全球与中国3D 动作捕捉解决方案市场现状及未来发展趋势
  19. 深度卷积神经网络之AlexNet
  20. java Optional操作

热门文章

  1. python股票成交明细_Python股票成交价格-买卖额分布图(三)
  2. java新应用_java8新特性的实际应用
  3. 深圳仙湖弘法寺佛家感言
  4. 全国每年计算机专业毕业生有多少,计算机专业国内就业分析
  5. 利用QPainter、QColor绘制黑白棋盘功能
  6. vue2+element-ui创建顶部导航栏及下拉菜单
  7. 可私有化部署的物联网云平台----性能稳定可靠 ,低成本
  8. Iconfont-阿里巴巴矢量图标库的SVG玩法
  9. DSW-Gallery使用体验+生成吸引人眼球的新闻标题
  10. 宝峰uv5r怎么设置信道_30、堂堂华为企业级AP怎么还不如家用TP的速度”快“呢?(科普篇)...