MyBatis 快速入门【下】

😀前言
本篇博文是一些功能的实现和实现日志输出,希望能够帮到你😊

🏠个人主页:晨犀主页
🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在次感谢啦😊

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

  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>
测试结果

😄总结

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

😁热门专栏推荐
MyBatis快速入门篇–
MyBatis(简化数据库操作的持久层框架)–快速入门[上]
MyBatis 快速入门【中】

文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晨犀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值