中阶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 ...
随机推荐
- H5新特性之语义化标签
一.为什么要增加新的语义化标签 在HTML 5出来之前,我们用div来表示章节,但是这些div都没有实际意义,这样的布局方式使我们的结构不够清晰,于是语义化标签应运而生. 二.何为语义化标签 顾名思义 ...
- 玩转控件:封装Dev的LabelControl和TextEdit
俗话说的好:"工欲善其事必先利其器",作为软件攻城狮也是同样道理,攻城狮开发的软件目的是简化客户的操作,让客户动动手指就可以完成很多事情,减少人力成本.这也是系统/软件存在的目的. ...
- 带有路径压缩和rank优化的并查集实现
public class unionfind2 implements UF { int[] parent; int[] rank; public unionfind2(int n) { parent= ...
- 130ftp-python3 FTP简单实现文件下载(含中文乱码问题)
130ftp-python3 FTP简单实现文件下载(含中文乱码问题) python3 FTP简单实现文件下载(含中文乱码问题) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- python之道14
看代码写结果: def wrapper(f): def inner(*args,**kwargs): print(111) ret = f(*args,**kwargs) print(222) ret ...
- oracle 10.1-10.4版本的oracle数据库要求
1.针对arcgis 10.1的oracle数据库要求 受支持的数据库版本 标准版/标准独立版/企业版: Oracle 10g R2(64 位)10.2.0.3 Oracle 11g R1(64 位) ...
- flask中的表单文件上传
在表单中上传文件时,一定要加入 enctype="multipart/form-data" 属性 为什么要加入这个属性呢: enctype就是encodetype就是编码类型的意思 ...
- Selenium系列(二十) - PageObject模式的详细介绍
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...
- springboot系列(三)配置文件详解
目录 properties 文件 1.语法 2.优先级 3.自定义数据配置 4.获取自定义数据配置 1.通过prefix获取 yml文件 1.语法 2.优先级 3.自定义数据配置. 4.获取自定义数据 ...
- Ubuntu16.04下LAMP环境的安装与配置
Ubuntu16.04下LAMP环境的安装与配置 最近做个实验需要用到Ubuntu环境的靶场,所以这里介绍下Ubuntu环境下LAMP的安装与配置,话不多说,我们gkd! 1.Apache2的安装 首 ...