一般在测试myBatis运行正常,但数据库数据不变时,有可能是SQL语句有问题,检查SQL语句没问题,但数据库依然没变,就说明myBatis方法执行后并未提交到数据库,可尝试在测试类添加   session.commit(); 可正常运行。

public class AppTest

{

SqlSession session = null; Reader reader=null;
@Before
public void init()throws IOException {
Reader reader = Resources.getResourceAsReader("sqlMapConfig.xml");
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
session = sessionFactory.openSession();
}
@After
public void destory()throws IOException {
if (session != null && reader != null) {
try {
session.commit();
} catch (Exception e) {
session.rollback();
} finally {
session.close();
reader.close();
}
}
}
/*批量删除*/
@Test
public void deleteempByForeach(){
Integer[] aid = {1001,1002};
int i = session.getMapper(empMapper.class).deleteempByForeach(aid); /*关于提交数据问题:
* 当前面提取可after 有进行数据提交,而在执行测试时测试结果正常,
* 但是数据库无变化,说明@after 注解并没有提交数据到数据库
* 在测试类内部添加提价数据语句 session.commit(); 后正常 */ session.commit();
System.out.println(i);
  }
}

myBatis执行测试批量删除,出现测试类正常显示,但数据库数据没变的更多相关文章

  1. mybatis 根据id批量删除的两种方法

    原文:https://blog.csdn.net/qq_40010745/article/details/81032218 mybatis 根据id批量删除的两种方法   第一种,直接传递给mappe ...

  2. ArcGIS模型构建器案例学习-批量删除空要素类地理模型

    ArcGIS模型构建器案例学习笔记-批量删除空要素类地理模型 联系方式:谢老师,135-4855-4328,xiexiaokui@qq.com 目的:批量删除记录个数为0的矢量文件 优点:逻辑清晰,不 ...

  3. 数据批量删除_从页面js到后台数据库

    LayUI   批量选择的 ,然后操作 batchdel: function () { var checkStatus = table.checkStatus('LAY-gridview') , ch ...

  4. Mybatis中resultMap的作用-解决实体类属性名和数据库字段不一致

    解决实体类属性名和数据库字段不一致

  5. mysql动态执行sql批量删除数据

    CREATE PROCEDURE `sp_delete_pushmsg_data`() BEGIN ); ); declare l_dutyno int; ; ; ; ; day),'%Y-%m-%d ...

  6. 通过bat命令批量删除VS查找历史记录

    有时候我们会发现我们的VS查找下拉框里面有很多之前的搜索记录,想删除但是却没有地方删除.  网上的方法都是直接找到注册表HKEY_CURRENT_USER\Software\Microsoft\Vis ...

  7. postgresql批量删除表

    CREATE FUNCTION del_ora_table() RETURNS void AS $$ DECLARE tmp ); DECLARE names CURSOR FOR select ta ...

  8. redis 批量删除操作

    redis 批量删除操作 需要在redis里面清空一批数据,redis没有支持通配符删除, 只有del key1 key2 ... 但是可以通配符获取 KEYS PATTERN 然后利用linux管道 ...

  9. Hbase如何批量删除指定数据

    有时我们需要批量删除一些hbase中符合某些条件的数据,本文提供一种简单的shell命令的方式批量删除hbase里的数据.思路就是,建立hive与hbase的关联表,通过hive sql查询出符合条件 ...

随机推荐

  1. 使用JFileChooser打开文件

    -----------------siwuxie095                                 工程名:TestFileChooser 包名:com.siwuxie095.fi ...

  2. 树莓派 Learning 001 装机 ---之 1 安装NOOBS系统

    树莓派安装NOOBS系统 (使用的树莓派板卡型号:Raspberry Pi 2 Model B V1.1)(板卡的型号在板子正面的丝印层上印着,你可以看到.) RASPBERRY PI 2 MODEL ...

  3. Luogu 2839 [国家集训队]middle

    感觉这题挺好的. 首先对于中位数最大有一个很经典的处理方法就是二分,每次二分一个数组中的下标$mid$,然后我们把$mid$代回到原来的数组中检查,如果一个数$a_{i} \geq mid$,那么就把 ...

  4. IDEA拷贝git上的最新项目资源

    File->new ->project version control->git-> 进入项目git对应的网址,选择第一个backstop,复制url: 输入git用户名和密码 ...

  5. dos下操作Mysql数据库

    先配置完环境变量之后,然后就可以使用mysql 命令了.

  6. 【Linux入门】

    文件系统结构:倒树状: 文件命名规则: Windows  8.3的命名规则:文件名8位以内,后缀名3位以内 linux中隐藏文件的方式:在文件名称前面加.  eg: 1.txt===> .1.t ...

  7. SqlDataReader

    using (mycon) { //using语句与try catch finally结合使用 mycon.Open(); // MessageBox.Show("dakai"); ...

  8. wpf listboxitem添加下划线

    1.通过List<string>进行赋值,没有字段绑定 // 前台xaml <ListBox x:Name="list1"> <ListBox.Ite ...

  9. 详细讲解MapReduce二次排序过程

    我在15年处理大数据的时候还都是使用MapReduce, 随着时间的推移, 计算工具的发展, 内存越来越便宜, 计算方式也有了极大的改变. 到现在再做大数据开发的好多同学都是直接使用spark, hi ...

  10. GTK+学习笔记(一)

    你将学到什么 如何实现弹出式菜单 菜单简介 菜单(GtkMenu)由菜单项(GtkMenuItem)构成,菜单项可以是任意构件比如按钮.菜单(子菜单) 菜单项的管理 菜单外壳(GtkMenuShell ...