![轻量级Java EE企业应用开发实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/980/44509980/b_44509980.jpg)
上QQ阅读APP看书,第一时间看更新
5.5 实战:使用JDBC操作数据库
本例演示使用JDBC来操作MySQL数据库。
5.5.1 初始化数据库
确保在本地计算机上已经安装了MySQL并且已经创建了一个数据库示例。比如本例创建了一个名为lite的数据库。
1.创建新的数据库
要创建新的数据库,执行下面的指令:
mysql>CREATEDATABASE lite; Query OK, 1row affected (0.19 sec)
2.使用数据库
使用数据库,执行下面的指令:
mysql>USE lite; Database changed
5.5.2 建表
我们需要创建一个数据库表来演示数据的操作。本例创建了一个名为t_host_info的表。执行脚本如下:
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P133_78859.jpg?sign=1739317555-Em3gJ0rTy5xAo0fNCh4DrvDKnUYP4W4L-0-dacd9d1e96fa106c4f32b3fbe30eb998)
在上述脚本中,host_info_id是一个自增长的主键。
5.5.3 初始化应用
本例创建了一个名为hello-jdbc的Maven项目。该项目的pom.xml内容如下:
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P133_79854.jpg?sign=1739317555-QqVeUWdRzRmagw2Ll7WC7Hn7I0jnU92l-0-4297e72ed490c1f3d49b059b669995b3)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P135_78861.jpg?sign=1739317555-Qbqn10HVjvVXFRJlaeXuYnjehoi3owFY-0-62b462873afdb09447ca4246705908a2)
在该pom.xml中引入了MySQL的驱动程序mysql-connector-java,以及JUnit 5测试框架。
5.5.4 创建测试类
正如前面章节所介绍的,Maven的测试用例类都放置在test目录下。我们创建了如下测试类:
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P135_78862.jpg?sign=1739317555-bEZVfaKTguxquk73ULuBVUo70OitN7ku-0-02c5319397579e02f1b5efa3a365d0e7)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P136_78863.jpg?sign=1739317555-uupVwHyyJu9WwqTU2NvEHXF0Xsz2zBNA-0-6d12111b1523abd68e308865e5ddc365)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P137_78864.jpg?sign=1739317555-ivxx6nogbROUSOlSfiLTSeTsNGHDsM6n-0-af594b764228f3551b216f025a4c98e7)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P138_78865.jpg?sign=1739317555-SpggtwS080FlbPKQ8qxVyXdGeS3qItQS-0-a4b34eff03146702e911433df5915f0e)
JdbcTest测试类有3个测试用例,分别是用于测试插入数据、查询数据、删除数据的JDBC操作。为了让整个程序显得更具有可维护性,我们抽离出了releaseResources方法,用于释放连接资源。
需要特别注意的是,在JUnit 5中,使用@TestMethodOrder(OrderAnnotation.class)注解来标识该类的测试用例,可以按照指定的顺序执行。测试用例上的@Order就是用于指定顺序。
使用以下命令执行测试:
mvn test
运行测试用例,若看到控制台输出如下内容,则说明测试成功:
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P138_78866.jpg?sign=1739317555-sZflvlN1r6S5OfblDO6gDtQo9HlllDFD-0-3aab27aab228d88035b4d1b17322643e)