JDBC学习
Posted 学好编程不秃头
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDBC学习相关的知识,希望对你有一定的参考价值。
才疏学浅,第一次写博客,仅供参考吧,主要是用于自己的复习
JDBC
概念
JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统、通用的SQL数据库存取和操作的公共接口(一组API),定义了用来访问数据库的标准Java类库,(java.sql,javax.sql)使用这些类库可以以一种标准的方法、方便地访问数据库资源。
JDBC实战
准备工作
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`name` varchar(255) CHARACTER,
`password` varchar(255) CHARACTER
)
INSERT INTO `user` VALUES ('lucy', '12345');
INSERT INTO `user` VALUES ('jack', '54321');
添加驱动依赖(这里添加的是mysql的依赖)
用maven仓库的形式来导入jar包
点击访问仓库地址
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
</dependency>
如果不会maven也没有关系
可以进入仓库
点击红圈位置即可下载jar包
然后进行以下步骤:
(1)将DBMS数据库管理软件的驱动jar拷贝到项目的libs目录中
(2)把驱动jar添加到项目的build path中
(3)将驱动类加载到内存中
以上完成后便已经导入了依赖 创建工程加入以下代码(其中的配置按自己的实际进行修改)
Class.forName("com.mysql.cj.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String userName = "root";
String passWord = "root";
效果图如下
打印connection的原因是看是否连接到了数据库
结果出现报错
这是时区问题,是mysql8.0出现的问题,解决的办法就是在url后面加上时区
?serverTimezone=GMT%2B8 即可
发现报错已经解决
以上解决完成后便成功连接到了数据库
JDBC增删改查
增
我们之前得到了connection对象,我们可以通过connection得到一个statement
,我们对数据库的增删改查操作便是对statement进行操作
实现代码如下
Statement statement = connection.createStatement(); //得到statement对象
然后自己编写sql语句进行对数据库进操作
statement可以调用的方法有很多
一般来说我们可以通过方法名大致了解方法的作用
像我们刚才调用的executeUpdate就是更新插入
控制台打印的1便是数据库有几条语句受到了影响
数据已经插入到了数据库中
为了避免资源的浪费我们还应该操作完成后对这些对象进行关闭
完整代码如下
Class.forName("com.mysql.cj.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8";
String userName = "root"; //数据库的账号名字
String passWord = "root"; // 数据库的密码
Connection connection = DriverManager.getConnection(url, userName, passWord);
Statement statement = connection.createStatement();
String sql = "insert into user values('张三',77777777)";
int update = statement.executeUpdate(sql);
System.out.println(update);
//5.释放资源
if (statement != null)
statement.close();
if (connection != null)
connection.close();
删
其实都了增加,删除的道理也差不多
我们还是对sql语句进行改变
将之前的String sql 进行修改即可
String sql = "delete from user where name='张三'";
数据已经就可以被删除了
改
类似增加和删除,到了这你自己应该也可以写出自己的修改程序了吧
将之前的String sql 进行修改即可
String sql = "update user set password = '88888888' where name = 'lucy'";
完成对数据修改
查
查找需要多一步操作,你需要创建一个bean来封装数据库得到的数据
创建一个与数据库对应的对象
- 然后进行修改sql语句
String sql = "select * from user";
-
然后通过statement调用方法进行查找
-
查找返回的是一个set
-
我们通过一个while循环取出里面的数据加到集合中
-
最后查出所有数据
相信到这你应该明白怎么查询语句了吧
以上就可以对数据进行一个查询
到这增删改查已经都聊完了
Statement其实有很多的问题
如每次执行一个SQL语句都需要先编译 和 sql语句拼接 和 sql注入等问题
所以我们会使用PreparedStatement解决问题
这个PreparedStatement我们下一篇博客再说吧,大家先把这个增删改查弄懂吧
纸上得来终觉浅,绝知此事要躬行
以上是关于JDBC学习的主要内容,如果未能解决你的问题,请参考以下文章
Java学习笔记8.1.1 初探JDBC - JDBC接口与类