中阶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 ...
随机推荐
- 深入理解计算机系统 (CS:APP) - 高速缓存实验 Cache Lab 解析
原文地址:https://billc.io/2019/05/csapp-cachelab/ 这个实验是这学期的第四个实验.作为缓存这一章的配套实验,设计得非常精妙.难度上来讲,相比之前的修改现成文件, ...
- 在Centos系统中基于PowerDNS和Poweradmin自建域名解析服务器替代DnsPod
本文讲述了我在Centos 7系统(其他版本的Centos未尝试)中基于PowerDNS和poweradmin自建域名解析服务器替代DnsPod的过程.通过本文所述方法,可以建立权威域名解析服务器的m ...
- 039.集群网络-Pod和SVC网络实践
一 Pod和SVC网络 1.1 实践准备及原理 Docker实现了不同的网络模式,Kubernetes也以一种不同的方式来解决这些网络模式的挑战.本完整实验深入剖析Kubernetes在网络层是如何实 ...
- 大数据软件安装之Hive(查询)
一.安装及配置 官方文档: https://cwiki.apache.org/confluence/display/Hive/GettingStarted 安装Hive2.3 1)上传apache-h ...
- 免费IP归属地查询接口汇总
目前做一个项目,需要判断是国内还是国外的IP,具体要求为接口稳定,速度快,免费,不异常,所以我整理了优质的接口供大家筛选. IP归属地查询API 一,淘宝API接口 http://ip.taobao. ...
- 洛谷2212Watering the Fields S 最小生成树
题目链接:https://www.luogu.com.cn/problem/P2212 几乎是Kruskal裸题,但是建n*(n-1)条边给我T了俩点,后来我发现只要C(n,2)条边就可以,因为假设( ...
- asp.net net::ERR_ABORTED 500 (Internal Server Error) 无法加载JS CSS等文件的解决方法
网站换服务器,部署上去后打开首页,js .css等文件始终无法加载,经过排查,问题出现在web.config文件中. <defaultDocument> <files> < ...
- Building Applications with Force.com and VisualForce (DEV401) (二一):Visualforce Componets (Tags) Library Part 1
Dev401-022:Visualforce Pages: Visualforce Componets (Tags) Library Part 1 Module Objectives1.List ke ...
- 通过带Flask的REST API在Python中部署PyTorch
在本教程中,我们将使用Flask来部署PyTorch模型,并用讲解用于模型推断的 REST API.特别是,我们将部署一个预训练的DenseNet 121模 型来检测图像. 备注: 可在GitHub上 ...
- Keras 多层感知机 多类别的 softmax 分类模型代码
Multilayer Perceptron (MLP) for multi-class softmax classification: from keras.models import Sequent ...