中阶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 ...
随机推荐
- 免费获取 Jetbrain 全家桶使用兑换码的正确姿势!
自今年1月份以Jetbrain公司严厉打击旗下开发工具产品(如:IntelliJ IDEA.WebStorm.PyCharm等)的盗版破解以来.求新破解方式.分享新破解方法的帖子或信息经常可以在各技术 ...
- java 知识点总结(转)
转载自 https://www.cnblogs.com/wl310538259/p/5218251.html (一)Java 1.接口和抽象类的区别 ①抽象类里可以有构造方法,而接口内不能有构造方法. ...
- dom4j解析xml格式文件实例
以下给4种常见的xml文件的解析方式的分析对比: DOM DOM4J JDOM SAX Dom解析 在内存中创建一个DOM树,该结构通常需要加载整个文档然后才能做工作.由于它是基于信息层次 ...
- 我的Keras使用总结(2)——构建图像分类模型(针对小数据集)
Keras基本的使用都已经清楚了,那么这篇主要学习如何使用Keras进行训练模型,训练训练,主要就是“练”,所以多做几个案例就知道怎么做了. 在本文中,我们将提供一些面向小数据集(几百张到几千张图片) ...
- Java爬取丁香医生疫情数据并存储至数据库
1.通过页面的url获取html代码 // 根URL private static String httpRequset(String requesturl) throws IOException { ...
- 优秀DevOps工程师必会的33个面试题
DevOps面试问题 01 您能告诉我们DevOps和Agile(敏捷)之间的根本区别吗? 答:尽管DevOps与敏捷方法(这是最流行的SDLC[Software Development Life C ...
- ShedLock-jdbc配置锁
项目初期为了快速响应业务开发,对于部分业务需要使用到定时任务功能模块,会直接嵌入到主流程代码中间.当业务增加,发展成分布式服务时,那些定时任务对整体而言重复执行.如果避免分布式服务中的定时任务单一执行 ...
- coding++:高并发解决方案限流技术---漏桶算法限流--demo
1.漏桶算法 漏桶作为计量工具(The Leaky Bucket Algorithm as a Meter)时,可以用于流量整形(Traffic Shaping)和流量控制(TrafficPolici ...
- ES6全面讲解
写在之前.讲解了比较常用的ES6知识点,可以快速的入门.有两个比较复杂的知识点(promise,generator)则是留在了其他文章中,在里面详细讲解. 介绍 1.历史 1.ECMAScript ...
- C#接口多继承方法重名问题
最近实现一个功能需要继承两个接口,然而父类接口有这重名的方法,且方法实现一致.两个父接口均被多个子接口继承,并在类实例中实现.起初,我是通过new重名方法来实现我的功能调用.后被指正,在网上看了一个工 ...