惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
T
Troy Hunt's Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
C
CXSECURITY Database RSS Feed - CXSecurity.com
小众软件
小众软件
S
Securelist
The Cloudflare Blog
博客园 - 司徒正美
D
Darknet – Hacking Tools, Hacker News & Cyber Security
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
博客园 - Franky
V
V2EX
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Latest news
Latest news
V
Vulnerabilities – Threatpost
雷峰网
雷峰网
G
GRAHAM CLULEY
罗磊的独立博客
J
Java Code Geeks
C
Cisco Blogs
Scott Helme
Scott Helme
Spread Privacy
Spread Privacy
宝玉的分享
宝玉的分享
T
The Blog of Author Tim Ferriss
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Microsoft Azure Blog
Microsoft Azure Blog
T
Tor Project blog
GbyAI
GbyAI
C
CERT Recently Published Vulnerability Notes
A
Arctic Wolf
博客园_首页
D
DataBreaches.Net
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Stack Overflow Blog
Stack Overflow Blog
K
Kaspersky official blog
Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
aimingoo的专栏
aimingoo的专栏
SecWiki News
SecWiki News
V
Visual Studio Blog
Jina AI
Jina AI
S
Schneier on Security
T
Threat Research - Cisco Blogs
Project Zero
Project Zero
有赞技术团队
有赞技术团队
P
Privacy & Cybersecurity Law Blog
Help Net Security
Help Net Security

星空下的YZY

【生活随笔】终于可以试一试new Bing了 指定日期网页自动变灰 【学习记录】微信小程序tabBar与自定义navigationBar踩坑记录 这小小破站(摸鱼)一周年啦 【个人记录参考】Vue3搭建项目 【学习记录】CSS动画 【随笔】将备案接入服务商转为腾讯云 正则表达式 【随笔】模拟退火 【随笔】博弈题基础回顾 live2d-widget(看板娘)修改及部署至服务器 【生活随笔】又是一年226,祝自己生日快乐 【杂记】各类零碎笔记(不定期更新) 友链朋友圈4.X.X前端适配尝试【基于店长Akilar的旧版方案】 Java读写txt文件 Hexo中使用ECharts动态图表尝试 【随笔】通过必应的工具发现别的网站未经允许的转载 【暂不公开】YZY的ACM模板整理-java版 更换Butterfly主题及其美化记录
使用JDBC操作数据库
星空下的YZY · 2022-02-04 · via 星空下的YZY

前言:

JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。这个我之前尝试过,但是时间久了,我也怕自己忘了相关的内容,所以通过本文来回顾🤣

如有错误,欢迎大佬指正😆

【转载说明】本文优先发布于我的个人博客www.226yzy.com ,转载请注明出处并注明作者:星空下的YZY。

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。

下载Mysql数据库驱动

由于Java 连接 MySQL 需要额外的驱动包,你可以通过下面的链接去下载你需要的版本

然后放在你的项目文件里

数据库驱动加载

有了驱动包之后就要进行数据库驱动加载

我当时写的代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13

public static void DatabaseDrivenLoad()
{
try
{
Class.forName("com.mysql.jdbc.Driver");
System.out.println("数据库驱动加载成功");
} catch (ClassNotFoundException e)
{
e.printStackTrace();
System.out.println("数据库驱动加载失败");
}
}

主要就是Class.forName("com.mysql.jdbc.Driver");这一句

数据库连接

数据库驱动加载后就是数据库连接

我当时写的代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

public static void DatabaseConnection()
{
try
{
Conn.con = DriverManager.getConnection(
"jdbc:mysql:"
+ "//127.0.0.1:3306/test12?characterEncoding=utf-8",
"root", "");
System.out.println("数据库连接成功");
} catch (SQLException e)
{
e.printStackTrace();
System.out.println("数据库连接失败,请检查url或用户名及密码");
}
}

其实就是

1
2
String driver = "jdbc:mysql://127.0.0.1:3306/test“;
Connection con = DriverManager.getConnection(driver, "root", “123456");

driver代表数据库URL

root代表数据库账户

123456代表你对应的数据库密码

有中文乱码的问题?

不妨尝试一下在原来的数据库URL后面加上?characterEncoding=utf-8

数据查询

这里会使用到Statement接口ResultSet接口

创建接口对象

1
2
Statement stmt = con.createStatement();
ResultSet res = stmt.executeQuery("select * from user12");

con是前面创建的Connection对象

res将是后续返回结果集的对象

我的使用参考如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
try
{
Statement stmt = Conn.con.createStatement();
ResultSet res = stmt.executeQuery("select * from book12");
while (res.next())
{
String id = res.getString("id");
String name = res.getString("name");
int typeid = res.getInt("typeid");
String writer = res.getString("writer");
String publisher = res.getString("publisher");
double price = res.getDouble("price");
int number = res.getInt("number");
Book book = new Book(id, name, typeid, writer, publisher, price,
number);
Conn.Books.add(book);
}
} catch (Exception e)
{
e.printStackTrace();
System.out.println("数据库书籍数据读取失败");
}

增删改数据

可以使用Statement对象executeUpdata()方法,通过不同的SQL语句实现运行增,删,改操作,返回更新的行数。

例如

1
2
3
String sql = "update user12 set name='" + name + "' where id='" + id
+ "' ";
state.executeUpdate(sql);

最后

暂时就写到这了,如有错误,欢迎大佬指正🤣

欢迎访问我的小破站https://www.226yzy.com/ 或者GitHub版镜像 https://226yzy.github.io/ 或Gitee版镜像https://yzy226.gitee.io/

我的Github:226YZY (星空下的YZY) (github.com)

【转载说明】本文优先发布于我的个人博客www.226yzy.com ,转载请注明出处并注明作者:星空下的YZY。

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 星空下的YZY

打赏

  • 微信

    微信

  • 支付宝

    支付宝