今天我们学习一下mybatis框架中的update节点元素的使用

需求:修改用户表中的一条数据记录,修改编号为21的用户的密码

UserMapper.xml

UserMapper.java

编写测试方法:

 @Test
public void testUpdate() {
SqlSession sqlSession = null;
User user=new User();
user.setUserPassword("000000");
user.setId(21); int count=0;//返回受影响的行数
try {
sqlSession = MyBatisUtil.createSqlSession();
//调用mapper接口的方式实现
count= sqlSession.getMapper(UserMapper.class).updateUser(user);
// int i=1/0;//模拟异常 后台日志打印出rolling back表示没有插入成功,事务进行了回滚
mlogger.info("返回受影响的行数:" + count);
sqlSession.commit();//后台日志打印出rolling back表示没有提交事务,事务进行了回滚,所以必须得提交事务才行
} catch (Exception e) {
// TODO: handle exception
} finally {
// 最后一定要注意:关闭会话
MyBatisUtil.closeSqlSession(sqlSession); } }

运行结果:

[DEBUG] 2019-11-05 21:03:24,121 org.apache.ibatis.transaction.jdbc.JdbcTransaction - Opening JDBC Connection
[DEBUG] 2019-11-05 21:03:24,695 org.apache.ibatis.datasource.pooled.PooledDataSource - Created connection 1720854532.
[DEBUG] 2019-11-05 21:03:24,701 cn.smbms.dao.user.UserMapper.updateUser - ooo Using Connection [com.mysql.jdbc.JDBC4Connection@66922804]
[DEBUG] 2019-11-05 21:03:24,703 cn.smbms.dao.user.UserMapper.updateUser - ==> Preparing: update smbms_user set userPassword =? where id=?
[DEBUG] 2019-11-05 21:03:25,084 cn.smbms.dao.user.UserMapper.updateUser - ==> Parameters: 000000(String), 21(Integer)
[INFO] 2019-11-05 21:03:25,087 cn.smbms.dao.test.UserMapperTest - 返回受影响的行数:1
[DEBUG] 2019-11-05 21:03:25,088 org.apache.ibatis.transaction.jdbc.JdbcTransaction - Committing JDBC Connection [com.mysql.jdbc.JDBC4Connection@66922804]
[DEBUG] 2019-11-05 21:03:25,093 org.apache.ibatis.transaction.jdbc.JdbcTransaction - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@66922804]
[DEBUG] 2019-11-05 21:03:25,095 org.apache.ibatis.transaction.jdbc.JdbcTransaction - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@66922804]
[DEBUG] 2019-11-05 21:03:25,097 org.apache.ibatis.datasource.pooled.PooledDataSource - Returned connection 1720854532 to pool.

数据库查询结果:

 

 

Mybatis框架-update节点元素的使用的更多相关文章

  1. Mybatis框架-Delete节点元素的使用

    这个就也比较简单,需求:将我们最新插入的那条数据删除掉,从用户表中. UserMapper.xml UserMapper.java 编写测试方法: @Test public void testDele ...

  2. MyBatis框架-ResultMap节点

    需求:查询结果要求显示用户名,用户密码,用户的角色 因为在用户表中只有用户角色码值,没有对应的名称,角色名称是在码表smbms_role表中,这时我们就需要联表查询了. 之前我们使用的是给查询结果字段 ...

  3. MyBatis框架的insert节点-向数据库中插入数据

    需求:使用mybatis框架中的insert元素节点向数据库中插入数据 UserMapper.xml UserMapper.java 编写测试方法: @Test public void testAdd ...

  4. 【Java】关于MyBatis框架的总结

    最近在学习MyBatis框架,我在这里记录一下学习MyBatis过程中的心得体会. Mybatis是什么?使用它我们可以做什么? MyBatis是一个开源的数据持久层框架,它内部封装了通过JDBC访问 ...

  5. 关于mybatis框架的总结【转载】

    原文地址:https://www.cnblogs.com/xiaotie666/p/LiujinMybatisSummary.html 此文为转载.请支持原作者. 最近在学习MyBatis框架,我在这 ...

  6. MyBatis框架的使用及源码分析(四) 解析Mapper接口映射xml文件

    在<MyBatis框架中Mapper映射配置的使用及原理解析(二) 配置篇 SqlSessionFactoryBuilder,XMLConfigBuilder> 一文中,我们知道mybat ...

  7. Hibernate框架与Mybatis框架的对比

    学习了Hibernate和Mybatis,但是一直不太清楚他们两者的区别的联系,今天在网上翻了翻,就做了一下总结,希望对大家有帮助! 原文:http://blog.csdn.net/firejuly/ ...

  8. 初识Mybatis框架,实现增删改查等操作(动态拼接和动态修改)

    此第一次接触Mybatis框架确实是有点不适应,特别是刚从Hibernate框架转转型过来,那么为什么要使用Mybatis框架,Mybatis框架和Hibernate框架又有什么异同呢? 这个问题在我 ...

  9. 详解Java的MyBatis框架中SQL语句映射部分的编写

    这篇文章主要介绍了Java的MyBatis框架中SQL语句映射部分的编写,文中分为resultMap和增删查改实现两个部分来讲解,需要的朋友可以参考下 1.resultMap SQL 映射XML 文件 ...

随机推荐

  1. ECharts 避免变窄

    var roomPercentChart = echarts.init(document.getElementById('room_percent')); function ajaxGetRoomPe ...

  2. VMware版本为15安装win7旗舰版不能成功安装VMware tools

    VMware版本为15安装win7旗舰版不能成功安装VMware tools 出现的问题: 一直报错说需要系统更新到SP1系统,到网上找了很多升级方式,都未果 直接通过Windows Update,未 ...

  3. webbench网站测压工具源码分析

    /* * (C) Radim Kolar 1997-2004 * This is free software, see GNU Public License version 2 for * detai ...

  4. 2019-7-17 正则表达式和re模块

    一.re模块与正则表达式之间的关系 正则表达式不是python独有的,它是一门独立的技术 所有的编程语言都可以使用正则 但是如果你想在python中使用,你就必须依赖于re模块 正则的官方定义:正则表 ...

  5. AVR单片机教程——旋转编码器

    好久没写这个系列了.今天讲讲旋转编码器. 旋转编码器好像不是单片机玩家很常用的器件,但是我们的开发板上有,原因如下: 旋转编码器挺好用的.电位器能旋转的角度有限,旋转编码器可以无限圈旋转:旋转时不连续 ...

  6. python3:使用for循环打印九九乘法表

    for i in range(1, 10): for j in range(1, i + 1): print(j, '*', i, '=', i * j, end=" ") #en ...

  7. git 学习笔记 --- Rebase

    在上一节我们看到了,多人在同一个分支上协作时,很容易出现冲突.即使没有冲突,后push的童鞋不得不先pull,在本地合并,然后才能push成功. 每次合并再push后,分支变成了这样: $ git l ...

  8. mybatis逆向生成dao mapper和example.java文件

    mabatis插件 <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>myba ...

  9. SQLServer更新数据库每行一个随机数

    代码: ) DECLARE user_extension_cursor CURSOR FOR SELECT UserCode FROM Users OPEN user_extension_cursor ...

  10. JUC - Monitor监控ThreadPoolExecutor

    JUC - Monitor监控ThreadPoolExecutor 一个自定义Monitor监控ThreadPoolExecutor的执行情况 TASK WokerTask class WorkerT ...