专栏首页企鹅号快讯我们来继续研究 mybatis 框架sql映射文件的属性

我们来继续研究 mybatis 框架sql映射文件的属性

温馨提示:本问阅读需要4分钟,建议收藏后阅读!

各位小伙伴

祝大家元旦快乐

开始我们今天的分享

我们已经了解了 mybatis 框架的两种使用方式以及主配置文件 (mybatis-config.xml) 的属性。那么今天我们来一起了解sql 映射文件 (userMapper.xml) 的属性。

parameterType 输入参数

1)简单类型的单个参数

我们来模拟一个需求:根据用户 id 查询用户信息

先在接口类 UserMapper.Java 中,添加一个接口。

然后在对应的 UserMapper.xml 中,填写 sql 查询语句。

在测试类中测试一下。这个也没什么说的我们最近一直都在测试这些。

2)简单类型的多个参数

模拟需求:通过登录名和密码验证用户是否存在

先在接口类 UserMapper.Java 中,添加一个接口。这里需要添加两个参数

然后在对应的 UserMapper.xml 中,填写 sql 查询语句。再添加两个参数的时候可以在大括号里填上 0 代表第一个参数,1 第二个参数以此类推。

在测试类中测试一下。

这是2个参数,要是参数再多点,我们这样一个个的标,很麻烦。这是就可以利用包装对象,直接传一个对象进去。

3)包装类对象作为输入参数进行查询

模拟需求:根据界面输入的用户名称或者登录名称来查询符合条件的用户列表。

先创建一个包装类,包装我们的 User 对象,这里就可以包装很多参数了。

在接口类 UserMapper.Java 中,添加一个接口。

然后在对应的 UserMapper.xml 中,填写 sql 查询语句。

在测试类中测试一下。

再多的参数也不用怕了。

resultType/resultMap 对象

1)简单类型的输出例:Integer String Long 。

在接口类 UserMapper.Java 中,添加一个接口,查询用户总数。

然后在对应的 UserMapper.xml 中,填写 sql 查询语句。

在测试类中测试一下。

2)对象的输出

我们之前做的都是对象输出,给大家简单的测试一下。

3)HashMap 的输出

在接口类 UserMapper.Java 中,添加一个接口。

然后在对应的 UserMapper.xml 中,填写 sql 查询语句。

在测试类中测试一下。

这样看着不方便,我把它复制出来大家看一下结果。

3)resultMap 对象输出

这个是一个重点,假设我们的数据库命名和我们的 Java 属性命名是不一样的,这样我们就是映射不上,这个时候就需要手动设置一个 resultMap 来解决这个问题。

在接口类 UserMapper.Java 中,添加一个接口。

然后在对应的 UserMapper.xml 中,填写 sql 查询语句。

其中:

id 标签代表数据库表的主键

column 代表列名或者 sql 中的别名

property 代表 java 对象的属性名

在测试类中测试一下。

还是复制出来看一下。

这个resultMap很重要,大家多去试一下。至于有什么作用呢?我们之后会分享给大家的。

今天的分享就到这里了

伙伴们

元旦快乐

拜拜

有任何问题都可以在文章留言,娜姐都看着的呢!

合作,投稿,转载,版权问题请联系 李娜:Lina_Java

本文来自企鹅号 - Java联盟媒体

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 我们来继续研究 mybatis 框架sql映射文件的属性

    ‍我们来继续研究 mybatis 框架sql映射文件的属性 各位小伙伴 祝大家元旦快乐 开始我们今天的分享 我们已经了解了 mybatis 框架的两种使用方式以...

    企鹅号小编
  • JAVA核心技术学习笔记

    掌握Java核心技术是学习和掌握好Java技术的关键,下边分17个点对这些Java核心技术进行讲解。 >>>1.Java中没有多继承,而是用接口来代替多继承 >...

    企鹅号小编
  • 谁说 Java 要过时?2017年Java 大事件一览及未来前瞻

    在过去的一年中,Java 历经了许多变化。在今年年初,Java EE 处于一个不确定的状态,Java 9 版本也推迟了它的发布日期。在 2016 年的 Java...

    企鹅号小编
  • 文本挖掘|R语言助力简·奥斯丁部分作品的情感分析

    ‍‍‍‍ 整理文本进行情感分析是典型的文本分析案例,当打算深度阅读一篇文章时,可以利用我们对单词的情感意图的理解来推断一篇文章是积极的还是消极的,或者其他可能带...

    黑妹的小屋
  • Android存储访问及目录

      Android支持外部存储(case-insensitive filesystem with immutable POSIX permission clas...

    战神伽罗
  • Hadoop集群运维

    场景1:namenode节点故障,active namenode节点状态切换?如何恢复?

    主机优惠
  • 不推荐使用Spring Boot 2.2.0 ,这个问题你肯定会遇

    > 项目推荐: Spring Cloud 、Spring Security OAuth2的RBAC权限管理系统 欢迎关注 最新版本实践

    冷冷
  • 爬取博客园的所有随笔的url以及计数,还有对应标题

    小小咸鱼YwY
  • 开发 | 类似淘宝的搜索及购物车功能,如何在小程序中实现?

    在上一篇文章中,我们复盘了一个服装行业订单收集小程序的产品逻辑和数据库的设计思路。

    知晓君
  • ElasticSearch(7.2.2)-ElasticSearch核心概念的介绍

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    cwl_java

扫码关注云+社区

领取腾讯云代金券