爱情36技之一劳永逸

【这是一猿小讲的第 41 篇原创分享】

今天雅兴又起,再续爱情36技。大概率你们已经淡忘了 Java 那小子与 Python 菇凉浪漫的爱情故事,容我再帮着给大家回味一下。

Java 那小子先是靠着《爱情36技之追美妹的技术》抱得美人归;考虑到爱情保鲜,Java 那小子又借着《爱情36技之暗送秋波的技术》实现了对 Python 菇凉的暗送秋波;为了能够能让爱情更长远,然后两人靠着《爱情36技之趣味相投》实现了志同道合,Python 菇凉从此也踏上学习编程之路;为了让努力学习编程的 Python 菇凉稍微放松一下,特意安排一次游玩,没成想,游玩途中却出现了《爱情36技之Bug大战》;为了让 Python 菇凉能学好编程技术,考虑到好的学习方法是成功的一半,于是 Java 那小子在猿门开坛设法进行了《爱情36技之猿门授渔》;由于繁琐的编程知识向 Python 菇凉的袭来,Python 唯恐浪漫的旅行记忆,会被繁琐的编程知识抹去,考虑到好记性不如烂笔头,于是让 Java 那小子实现《爱情36技之记忆永存》。

让故事给技术加点料,说句心里话,未曾想爱情36技,还真连载了几篇,无论质量如何,总之是数量是跟上了(捂嘴笑),希望你们能够喜欢。

好了,准备好小板凳,今天的故事又要开始啦。

1. 

承接上次,在 MySQL 兄弟的帮助下,Java 那小子完成了 Python 菇凉的浪漫旅途记忆的存储,但是 Python 菇凉感觉查询不太方便,每次要打开一个黑布隆冬的界面,能否自研一套个性化的工具,完成对 MySQL 兄弟的 CRUD?

Java 那小子会意一笑。“这不就是我的专长么,看来今天有必要,再给你介绍一个新朋友 JDBC?”

“JDBC?啥是JDBC?” Python 菇凉一脸懵的问。

Java 那小子发自内心的说道:“JDBC 是定义的一套数据库连接规范,也就是定义了一系列的接口,然后让各个数据库厂商去实现,其中 MySQL 兄弟就实现了规范,出了一套 mysql-connector-java。” 

Python 菇凉满怀期待的说:“那别瞎扯啦,咱们赶紧用它实现一个 MySQL 的客户端呗?” 

“好,那你坐稳扶好,我要开车啦。” Java 那小子兴奋的说道。

2. 

首先咱们要引入 MySQL 兄弟实现的驱动包。

<dependency>	
    <groupId>mysql</groupId>	
    <artifactId>mysql-connector-java</artifactId>	
    <version>8.0.17</version>	
</dependency>

接着要拆分一下目标,把大象放到冰箱里大概分为那几步?

640?wx_fmt=png

接着定义能够获取对 MySQL 兄弟的连接方法。

640?wx_fmt=png

考虑到功能复用,紧接着定义一个接收控制台输入的方法。

640?wx_fmt=png

接下来就可以依据不同的命令,做不同的操作了,我们可以支持 quit 退出系统、commit 提交事务、rollback 回滚事务。

640?wx_fmt=png

考虑到功能复用,我们定义一个可以实现从控制台输入中,截取出实际输入命令的方法。

640?wx_fmt=png

接着定义处理事务的方法,相当之简单,输入是 commit 指令,就进行提交事务,否则就回滚事务。

640?wx_fmt=png

紧跟着就实现重头戏,CRUD 全在这里啦,可以认为是这篇分享的 C 位。

640?wx_fmt=png

然后就是定义工具类 JdbcUtil,完成结果集打印以及资源释放,重点在结果集打印,资源释放的图就不截了。

640?wx_fmt=png

代码码完,能否经得起检验,是骡子是马,是时候牵出来溜一圈啦。运行程序,根据提示依次输入数据库连接 URL、用户名、密码,效果如下:

640?wx_fmt=png

意料之中,成功连上数据库。

为了更好的体验,把上次为 Python 菇凉创建的浪漫旅行的数据库先删除。

640?wx_fmt=png

然后看看是否真删除掉了呢?

640?wx_fmt=png

接下来就为 Python 菇凉再创建一个专门存储浪漫旅行的数据库 travel。

640?wx_fmt=png

接下来使用 travel 库。

640?wx_fmt=png

在 travel 库下,创建表 memories。

640?wx_fmt=png

插入 Python 菇凉去土耳其的旅行记录。

640?wx_fmt=png

查询记录是否插入成功。

640?wx_fmt=png

事务回滚试一下,效果也是杠杠滴。

640?wx_fmt=png

看到实现效果,Python 菇凉流露出甜蜜的笑容。

3. 

经验分享,如果中文出现“???”,检查一下数据库连接URL,把 useUnicode=true&characterEncoding=utf-8 拼接上就行了。

好了,今天的分享就到这儿吧,主要分享一款玩转 JDBC 的工具,适合 Java 猿(媛)们入门学习使用,如果面试中再问道 JDBC的问题,不妨提提这次的编码经历,说不定会加分。另外剩下的 update、delete、drop、quit 等等就交给你们自己去验证吧。

640?wx_fmt=png

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值