![轻量级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=1739113456-73KpwNVgb8j8Pz7Dr5KfXMMRY1pOLGra-0-c6024290eae925bd5e7d665992cdb46c)
在上述脚本中,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=1739113456-4ziMhxPW8TEPeIOFNy73J4CEcOcOxQfJ-0-7bba532ab7417b56e71f0edcf256ea25)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P135_78861.jpg?sign=1739113456-02OvzlMRm0zoeXiEYT1uJPk4UgCVZkjg-0-176fb5666ee181d5f8b94c6bf860b93e)
在该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=1739113456-SWDDbcSdEr5KSrXyPAWTIHNSbEnjudQw-0-91718f5703669e410e9587e8571dc0c3)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P136_78863.jpg?sign=1739113456-UtgJCrWLVpLOfMzoM0zJQhFDvrVCm5Wq-0-71e51d233a5d06c754809e12d778e33b)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P137_78864.jpg?sign=1739113456-ySIH2KwVI0dQuSaVdKvAlND4ZOFZmwnR-0-ce44acca7e14159383462019e48f3550)
![](https://epubservercos.yuewen.com/A99FE4/23721413109387006/epubprivate/OEBPS/Images/Figure-P138_78865.jpg?sign=1739113456-7JWZu47sGf5vuaIeaTA5ySD9lEIyrt3J-0-c0636e8e83e0edf88dbd9d808951849d)
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=1739113456-PjVAqTuzXM0FLAbJs71d7ptffbsWfbwd-0-1d2cbd4c6e9813b34e4beb0ca52704c3)