JavaWeb | JDBC概述及IDEA连接MySQL
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
本专栏主要是记录学习完JavaSE后学习JavaWeb部分的一些知识点总结以及遇到的一些问题等如果刚开始学习Java的小伙伴可以点击下方连接查看专栏
本专栏地址🔥JavaWeb
Java入门篇 🔥Java基础学习篇
文章目录
一、前言
首先学习JavaWeb就需要连接数据库使用Java语言来对数据库进行一系列操作本文作为一篇入门JDBC的文章希望能够帮助到更多的初学者吧
二、概述
1.概述
JDBC 就是使用Java语言操作关系型数据库的一套API
全称( Java DataBase Connectivity ) Java数据库连接
我们开发的同一套Java代码是无法操作不同的关系型数据库因为每一个关系型数据库的底层实现细节都不一样。
如果这样问题就很大了在公司中可以在开发阶段使用的是MySQL数据库而上线时公司最终选用oracle数据库我们就需要对代码进行大批量修改这显然并不是我们想看到的。
我们要做到的是同一套Java代码操作不同的关系型数据库而此时sun公司就指定了一套标准接口JDBCJDBC中定义了所有操作关系型数据库的规则。
众所周知接口是无法直接使用的我们需要使用接口的实现类而这套实现类称之为驱动就由各自的数据库厂商给出。
2.本质
-
官方sun公司定义的一套操作所有关系型数据库的规则即
接口
-
各个数据库厂商去实现这套接口提供数据库驱动
jar包
-
我们可以使用这套接口
JDBC
编程真正执行的代码是驱动jar包中的实现类
3.好处
-
各数据库厂商使用
相同的接口
Java代码不需要针对不同数据库分别开发 -
可随时替换底层数据库访问数据库的Java
代码基本不变
三、Java操作数据库的流程
第一步编写Java代码
第二步Java代码将SQL发送到MySQL服务端
第三步MySQL服务端接收到SQL语句并执行该SQL语句
第四步将SQL语句执行的结果返回给Java代码
四、创建并配置IDEA项目
1.创建空项目
2.配置项目
3.新建模块
这里可以使用IDEA的一个快捷方式来直接新建和配置模块点击下图中红框中的图案后选择模块Model即可新建模块
然后这里选择Java模块以及对应的SDK即可新建并配置成功一个新的模块在本项目中的
这里自定义一个模块名称
4.导入jar包
导入jar包时不能直接将jar包复制黏贴到这个项目中而是要在项目中再新建一个目录
在该目录下存放
我们所要使用的jar包
。这里给目录起名 lib
5.将jar包导入libraries
这里右键选中jar包我没有找到快捷键于是采用了下面这种方式测试过发现也是可以正常连接MySQL数据库并执行代码的
选择文件
file—> 结构设置
—>libraries然后浏览文件注意这里要 选择这个项目目录下的jar包不要选择自己从网上下载放在别的地方的jar包
这样就创建并配置好一个项目了接下来开始写代码
五、书写代码连接数据库
1.注册驱动
Class.forName("com.mysql.jdbc.Driver");
2.获取连接
我们要获取链接就要用到getConnection
方法这里getConnection
方法内的参数我们可以来看一下有以下这三个那么我们就需要去自定义这三个变量再定义一个变量去接收这个方法执行后的结果
url
需要链接的地址jdbc:mysql://localhost:3306/[数据库名称]
- 这里我的数据库名称是test那么链接就是
jdbc:mysql://localhost:3306/test
-
username
自己设定MySQL的用户名 -
password
自己设定的密码
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection c = DriverManager.getConnection(url,username,password);
3.定义sql
这里我们可以自己定义一个语句增删改都可以前提是这个语句不要有错
String sql = "update user set money = 5000 where id = 1 "
4.获取执行sql的对象
这里使用createStatement()
方法并自定义一个对象来接收
Statement stmt = c.createStatement();
5.执行sql
这里执行完sql语句后我们要用一个变量去接收它这样才能处理这个结果也就是打印输出这个结果那么就需要用到executeUpdate()
方法
int count = stmt.executeUpdate(sql);
6.处理结果
在MySQL执行完成后要将结果传送到IDEA中并打印输出处理的结果
System.out.println(count);
7.释放资源
在结束整个程序后要关闭上面两个方法使用.close
方法来释放资源
stmt.close();
c.close();
8.完整代码
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class jdbcDemo1 {
public static void main(String[] args) throws Exception {
//注册驱动
Class.forName("com.mysql.jdbc.Driver");
//获取连接
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection c = DriverManager.getConnection(url,username,password);
//定义sql
String sql = "update user set money = 5000 where id = 1 ";
//获取执行sql的对象
Statement stmt = c.createStatement();
//执行sql
int count = stmt.executeUpdate(sql);
//处理结果
System.out.println(count);
//释放资源
stmt.close();
c.close();
}
}
六、测试代码
这里我们就写了一条数据希望通过代码来对这个表中的数据进行更新将zhangsan的money数据改为5000代码具体如上如果sql语句看不懂的话可以看博主的《数据库》相关专栏
执行完毕控制台输出1代表有一条数据发生变化我们再去Navicat
上看一下数据注意Navicat需要刷新一下才会改变数据否则依然是原始数据
修改成功
七、结语
接下来将学习相关的JDBC API博主也会在这个专栏中持续更新的