中阶d03.3 JDBC_CURD_Util --- 使用 junit执行单元测试(增删改查)
1.单元测试环境准备
https://www.cnblogs.com/longesang/p/11399010.html
2.测试

3.结果返回

4.代码
新建一个test目录统一存放测试案例
查:
statement.executeQuery
增删改:
int executeUpdate
statement.executeUpdate(sql)
package CURD_junit单元测试_增删改查.test; import CURD_junit单元测试_增删改查.JDBCUtil;
import org.junit.Test; import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement; /**
* 使用junit执行单元测试
*/
public class TestDemo { @Test
public void testQuery() {
Connection conn = null;
Statement statement = null;
ResultSet resultSet = null; try {
//1.创建连接
conn = JDBCUtil.getConn();
//2. 根据连接对象,得到statement操作数据库
statement = conn.createStatement(); //3. 执行sql语句,返回ResultSet
String sql = "select * from users";
resultSet = statement.executeQuery(sql); //遍历结果
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
int age = resultSet.getInt("age");
System.out.println(id+"---"+name +"---"+ age);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
//释放资源
JDBCUtil.closeRelease(conn,statement,resultSet);
}
} @Test
public void testInsert() {
Connection conn = null;
Statement statement = null; try {
//1.创建连接
conn = JDBCUtil.getConn();
//2. 根据连接对象,得到statement操作数据库
statement = conn.createStatement(); //3. 执行sql语句,返回ResultSet
String sql = "insert into users(name,age) values('小王',22)";
int resultSet = statement.executeUpdate(sql); //4.执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句)。
//影响的行数, ,如果大于0 表明操作成功。 否则失败
if(resultSet > 0) {
System.out.println("执行成功!");
}else {
System.out.println("执行失败");
} } catch (Exception e) {
e.printStackTrace();
}finally {
//释放资源
JDBCUtil.closeRelease(conn,statement);
}
} @Test
public void testUpdate() {
Connection conn = null;
Statement statement = null; try {
//1.创建连接
conn = JDBCUtil.getConn();
//2. 根据连接对象,得到statement操作数据库
statement = conn.createStatement(); //3. 执行sql语句,返回ResultSet
String sql = "update users set age = 12 where name = '小王'";
int resultSet = statement.executeUpdate(sql); //4.执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句)。
//影响的行数, ,如果大于0 表明操作成功。 否则失败
if(resultSet > 0) {
System.out.println("执行成功!");
}else {
System.out.println("执行失败");
} } catch (Exception e) {
e.printStackTrace();
}finally {
//释放资源
JDBCUtil.closeRelease(conn,statement);
}
} @Test
public void testDelete() {
Connection conn = null;
Statement statement = null; try {
//1.创建连接
conn = JDBCUtil.getConn();
//2. 根据连接对象,得到statement操作数据库
statement = conn.createStatement(); //3. 执行sql语句,返回ResultSet
String sql = "delete from users where name = '小明' and id = 1";
int resultSet = statement.executeUpdate(sql); //4.执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句)。
//影响的行数, ,如果大于0 表明操作成功。 否则失败
if(resultSet > 0) {
System.out.println("执行成功!");
}else {
System.out.println("执行失败");
} } catch (Exception e) {
e.printStackTrace();
}finally {
//释放资源
JDBCUtil.closeRelease(conn,statement);
}
}
}
理解:



中阶d03.3 JDBC_CURD_Util --- 使用 junit执行单元测试(增删改查)的更多相关文章
- 在C#的控制台应用中使用Dapper链接MySQL并执行一些增删改查
一.首先先创建一个C#的控制台应用 二.然后添加上必要的命名空间 using System;using System.Collections.Generic;using MySql.Data.MySq ...
- SpringBoot+MyBatis中自动根据@Table注解和@Column注解生成增删改查逻辑
习惯使用jpa操作对象的方式,现在用mybatis有点不习惯. 其实是懒得写SQL,增删改查那么简单的事情你帮我做了呗,mybatis:NO. 没办法,自己搞喽! 这里主要是实现了通过代码自动生成my ...
- magento中Model创建以及该Model对于数据库的增删改查
本文是按照magento英文文档照做与翻译的. Model层的实现是mvc框架的一个巨大的部分.它代表了你的应用的数据,或者说大多数应用没有数据是无用的.Magento的Model扮演着一个重要的角色 ...
- 用Java中的File类模拟实现对系统文件的增删改查效果
码字不易,三连支持一波吧 IO操作向来是各大语言的热区,而对文件的操作也是重中之重. 那么在Java中也给我们提供了很多关于文件操作的类.今天我就用一个比较基本的File类来模拟实现对文件的增删改查效 ...
- MFC中对基于ODBC对数据ACCESS数据库的增删改查。
在MFC中可以使用很多方法对数据库进行操作. 什么ODBC 什么ADO之类的,这里要介绍使用的ODBC这种方法,通过本文的阅读可以达初步掌握在MFC里面通过ODBC访问ACCESS数据库. 涉及到的 ...
- django中判断当前user具有是否有对模块的增删改查权限
首先简单了解一下user的一些属性 User对象 User对象是认证系统的核心.用户对象通常用来代表网站的用户,并支持例如访问控制.注册用户.关联创建者和内容等.在Django认证框架中只有一个用户类 ...
- Sql中常用的创建表 约束 主外键 增删改查的语句
创建数据库 USE master; GO --日记数据库 create database DiaryBase on ( name=DiaryBase_Dat,--逻辑名称 FILENAME='c:\D ...
- JDBC中 mysql数据库的连接工具类 Java登录 及增删改查 整理 附带:Navicat Premium 11.0.12中文破解版.zip(下载)mysql数据库工具
先写一个工具类,有实现MySQL数据库连接的方法,和关闭数据库连接.关闭ResultSet 结果集.关闭PreparedStatement 的方法.代码如下: package com.swift; ...
- 中阶 d03.5 (正篇)完整的Dao 操作数据库
1.目录结构: util---JDBCUtil.java(工具包,整合建立链接和释放资源的方法) dao---UserDao.java(接口,定义方法) impl---UserDaoImpl.java ...
随机推荐
- S3C2440A特殊寄存器
S3C2440A特殊寄存器 特殊寄存器有: 输入输出端口 存储器控制器 NANDFLASH 看门狗定时器 时钟和电源管理 PWM定时器 UART USB设备 中断控制器 DMA LCD控制器 RTC ...
- Python习题集(一)
每天一习题,提升Python不是问题!!有更简洁的写法请评论告知我! 题目 有一个数据list of dict如下 a = [ {"}, {"}, {"}, ] 写入到本 ...
- python深浅拷贝&垃圾回收&上下文管理(with语句)
深浅拷贝 在Python中使用copy模块用于对象的拷贝操作. 该模块提供了两个主要的方法:浅拷贝 copy.copy() 深拷贝 copy.deepcopy() 1.浅拷贝(copy) 浅拷贝: 不 ...
- Spring生命周期详解
导读 Spring中Bean的生命周期从容器的启动到停止,涉及到的源码主要是在org.springframework.context.support.AbstractApplicationContex ...
- CKafka如何助力腾讯课堂实现百万消息稳定互动?
疫情期间,为了保障国内学子的正常学习进度,腾讯课堂积极响应国家“停工不停学”的号召,紧急上线疫情期间专用的“老师极速版”,使广大师生足不出户,即可快速便捷的完成线上开课.面对线上课堂百万量级的互动消息 ...
- 基于 HTML5 WebGL 与 GIS 的智慧机场大数据可视化分析【转载】
前言:大数据,人工智能,工业物联网,5G 已经或者正在潜移默化地改变着我们的生活.在信息技术快速发展的时代,谁能抓住数据的核心,利用有效的方法对数据做数据挖掘和数据分析,从数据中发现趋势,谁就能做到精 ...
- 安装SQL Server 2008R2 报错“此计算机上安装了 Microsoft Visual Studio 2008 的早期版本”解决方法
安装SQL Server 2008 R2报错“此计算机上安装了 Microsoft Visual Studio 2008 的早期版本,请在安装 SQL Server 2008 前将 VS2008 升级 ...
- input标签的accept属性、JQuery绑定keyDown事件
一. input标签的accept属性 当我们上传文件或者注册上传头像时,我们可以一般都是使用: <input type="file" id="my_file&qu ...
- 决战Leetcode: easy part(51-96)
本博客是个人原创的针对leetcode上的problem的解法,所有solution都基本通过了leetcode的官方Judging,个别未通过的例外情况会在相应部分作特别说明. 欢迎互相交流! em ...
- nltk 中的 sents 和 words
nltk 中的 sents 和 words ,为后续处理做准备. #!/usr/bin/env python # -*- coding: utf-8 -*- from nltk.corpus impo ...