MyBatis 快速入门【下】

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: MyBatis 快速入门【下】

MyBatis 快速入门【下】


11. 修改MonsterMapper.java, 增加方法接口


根据id 删除一个对象

//根据id 删除一个Monster
public void delMonster(Integer id);


12. 修改MonsterMapper.xml, 实现方法接口


<!--配置/实现delMonster方法
    1. 这里 java.lang.Integer 这是Java类型, 可以简写成 Integer
    2. 这里写入delete
    -->
    <delete id="delMonster" parameterType="Integer">
        DELETE FROM `monster` WHERE id = #{id}
    </delete>


13. 完成测试,增加方法


修改NLC_MyBatis\mybatis_quickstart\src\test\java\com\nlc\mapper\MonsterMapperTest.java, 增加测试方法。

测试delMonster方法是否成功。

 @Test
    public void delMonster() {
        monsterMapper.delMonster(2);
        if(sqlSession != null) {
            sqlSession.commit();
            sqlSession.close();
        }
        System.out.println("删除成功...");
    }


14. 修改MonsterMapper.java, 增加方法接口


//修改Monster
public void updateMonster(Monster monster);
//查询-根据id
public Monster getMonsterById(Integer id);
//查询所有的Monster
public List<Monster> findAllMonster();


15.修改MonsterMapper.xml, 实现方法接口


1)为了配置方便,在mybatis-config.xml 配置Monster 的别名

<configuration>
<typeAliases>
    <!-- 为某个mapper 指定一个别名, 下面可以在XxxxxMapper.xml 做相应简化处理-->
    <typeAlias type="com.nlc.entity.Monster" alias="Monster"/>
</typeAliases>


2)修改MonsterMapper.xml, 实现方法接口, 可以使用Monster 别名了.

    <!--配置实现 updateMonster-->
    <update id="updateMonster" parameterType="Monster">
        UPDATE `monster`
        SET `age`=#{age} , `birthday`= #{birthday}, `email` = #{email},
        `gender` = #{gender} , `name`= #{name}, `salary` = #{salary}
        WHERE id = #{id}
    </update>
    <!--配置/实现getMonsterById-->
    <select id="getMonsterById" resultType="Monster">
        SELECT * FROM `monster` WHERE id = #{id}
    </select>
    <!--配置/实现findAllMonster-->
    <select id="findAllMonster" resultType="Monster">
        SELECT * FROM `monster`
    </select>


16. 完成测试, 修改MonsterMapperTest.java , 增加测试方法


 @Test
    public void updateMonster() {
        Monster monster = new Monster();
        monster.setAge(50);
        monster.setBirthday(new Date());
        monster.setEmail("king3@qq.com");
        monster.setGender(0);
        monster.setName("老鼠精-01");
        monster.setSalary(2000);
        monster.setId(3);
        monsterMapper.updateMonster(monster);
        if(sqlSession != null) {
            sqlSession.commit();
            sqlSession.close();
        }
        System.out.println("修改成功...");
    }
    @Test
    public void getMonsterById() {
        Monster monster = monsterMapper.getMonsterById(3);
        System.out.println("monster=" + monster);
        if(sqlSession != null) {
            sqlSession.close();
        }
        System.out.println("查询成功~");
    }
    @Test
    public void findAllMonster() {
        List<Monster> monsters = monsterMapper.findAllMonster();
        for (Monster monster : monsters) {
            System.out.println("monster-" + monster);
        }
        if(sqlSession != null) {
            sqlSession.close();
        }
        System.out.println("查询成功~");
    }


日志输出-查看SQL


看一个需求


在开发MyBatis 程序时,比如执行测试方法,程序员往往需要查看程序底层发给MySQL的SQL 语句, 到底长什么样, 怎么办?


解决方案: 日志输出


日志文档https://mybatis.org/mybatis-3/zh/logging.html

配置日志https://mybatis.org/mybatis-3/zh/configuration.html#settings


配置日志-具体操作


  1. 查看文档: https://mybatis.org/mybatis-3/zh/configuration.html#settings

797226cb81f04bcca5c7dd03d77041e1.png


  1. 修改NLC_MyBatis\mybatis_quickstart\src\main\resources\mybatis-config.xml, 加入日志输出配置, 方便分析SQL 语句
<!-- 配置MyBatis 自带的日志输出, 还可以是其它日志比如SLF4J | LOG4J | LOG4J2 | JDK_LOGGING 等-->
<settings>
  <setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>


测试结果


778a737022fe492d91038ecbd948e1d5.png


😄总结


在测试结果时,需要查看程序底层发给MySQL的SQL 语句, 我们可以使用日志输出来实现,只需要向小编上方一样进行日志配置就可以,需要不同的类型也可以查看上方链接。

😁热门专栏推荐

MyBatis快速入门篇–

MyBatis(简化数据库操作的持久层框架)–快速入门[上]

MyBatis 快速入门【中】


文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁

希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻

如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
SQL Java 数据库连接
MyBatis快速入门以及环境搭建和CRUD的实现
MyBatis快速入门以及环境搭建和CRUD的实现
93 0
|
SQL Java 关系型数据库
Mybatis知识【Mybatis快速入门】第二章
Mybatis知识【Mybatis快速入门】第二章
|
19天前
|
SQL Java 数据库连接
MyBatis-Plus快速入门:从安装到第一个Demo
本文将带你从零开始,快速入门 MyBatis-Plus。我们将首先介绍如何安装和配置 MyBatis-Plus,然后通过一个简单的示例演示如何使用它进行数据操作。无论你是 MyBatis 的新手还是希望提升开发效率的老手,本文都将为你提供清晰的指导和实用的技巧。
106 0
MyBatis-Plus快速入门:从安装到第一个Demo
|
5月前
|
Java 数据库连接 API
后端开发之用Mybatis简化JDBC的开发快速入门2024及数据库连接池技术和lombok工具详解
后端开发之用Mybatis简化JDBC的开发快速入门2024及数据库连接池技术和lombok工具详解
63 3
|
6月前
|
SQL Java 数据库连接
Mybatis快速入门,Mybatis的核心配置文件
Mybatis快速入门,Mybatis的核心配置文件
46 1
|
5月前
|
Java 数据库连接 Apache
JavaWeb基础第二章(Maven项目与MyBatis 的快速入门与配置)
JavaWeb基础第二章(Maven项目与MyBatis 的快速入门与配置)
|
6月前
|
XML Java 数据库连接
【MyBatisPlus】快速入门、常用注解、常用配置
【MyBatisPlus】快速入门、常用注解、常用配置
77 0
|
6月前
|
XML SQL Java
MybatisPlus快速入门
MybatisPlus快速入门
86 1
|
6月前
|
SQL Java 数据库连接
【MyBatisPlus】通俗易懂 快速入门 详细教程
【MyBatisPlus】通俗易懂 快速入门 详细教程
656 0
|
6月前
|
SQL Java 数据库连接
【MyBatis-Plus】快速精通Mybatis-plus框架—快速入门
【MyBatis-Plus】快速精通Mybatis-plus框架—快速入门
209 0