mybatis

2023-05-16

我们在做SSM项目的时候,mybatis是其中的一部分,是最后一步也是最重要的一步,因为很多时候我们都是为了对数据库进行改动。前几天我在复习mybatis的时候,就把一些可能会踩到的坑都碰到了一遍。
1、 第一步就是参数的注释了。一定要记住mybatis对于两个或以上的参数要加上注解并命名,在参数的前面加上@Param注解以便区分。注解方式一样,不分类型。
2、第二个就是略微有些奇葩的,就是在xml文件中配置resultMap,可能是开发工具的缘故,他会对column上的单词进行校验,单词不规范或者单词不正确他会出现绿色的波浪线进行提示。这个时候你可以注意一下,因为有可能是单词写错了,和SQL或者实体类上的可能有些不同。这些都是小问题,遇到了也很好解决。
3、在使用查询语句时可能会用到分页。MySql的分页通常来都是用limit来进行分页的。在mybatis中可以使用bind标签进行分页开始索引的计算。如下:
在这里插入图片描述

而后可以在limit直接使用语句。如下:
在这里插入图片描述

4、在where语句中可能会用到比较运算符,例如“>”或“<”,这个时候可能会造成歧义,就是把“>”当成标签的一个括号。所以为了避免这个问题,我们可以使用转义字符来代替“>”。“>”可以使用 > 来代替,“<”使用 < 来代替。
5、where元素是一个非常方便的元素,where 元素知道只有在一个以上的if条件有值的情况下才去插入“WHERE”子句。而且,若最后的内容是 “AND”或“OR”开头的,where 元素也知道如何将他们去除,不会造成 WHERE AND 这种情况。
6、mybatis查询数据时select元素需要定义一个属性(有两个作用相同的属性,只取一个就好,具体要根据实际情况去使用)。分别是resultMap和resultType。这两个属性的区别在于封装数据类型。resultMap就是返回结果映射的,例如查询多个字段,就需要resultMap来配置数据的映射类型。一般为resultMap元素id值。
resultType就是返回一个字段时所用的,例如返回数据的总条数,可以resultType=”java.lang.Integer”。两个必须要有一个,否则就会报异常。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mybatis 的相关文章

随机推荐

  • systemd 介绍

    转自 xff1a https www linuxidc com Linux 2018 03 151291 htm 从 init 系统说起 Linux 操作系统的启动首先从 BIOS 开始 xff0c 接下来进入 boot loader xf
  • 详细讲解systemctl(附常用指令)

    目录 写在前面 systemd和systemctl systemd的配置文件目录 主要服务功能类型 服务状态 常用指令 切换系统模式 xff08 文本 界面模式等 xff09 systemctl配置文件的设置 写在前面 我发现systemc
  • Linux中systemctl详细理解及常用命令

    一 systemctl理解 Linux 服务管理两种方式service和systemctl systemd是Linux系统最新的初始化系统 init 作用是提高系统的启动速度 xff0c 尽可能启动较少的进程 xff0c 尽可能更多进程并发
  • ARM AArch64 GUN交叉编译工具下载官网

    Arm Developer https developer arm com tools and software open source software developer tools gnu toolchain gnu a downlo
  • GStreamer系列 - 基本介绍

    什么是Gstreamer xff1f Gstreamer是一个支持Windows xff0c Linux xff0c Android xff0c iOS的跨平台的多媒体框架 xff0c 应用程序可以通过管道 xff08 Pipeline x
  • 探索Android中的Parcel机制(下)

    上一篇中我们透过源码看到了 Parcel 背后的机制 xff0c 本质上把它当成一个 Serialize 就可以了 xff0c 只是它是在内存中完成的序列化和反序列化 xff0c 利用的是连续的内存空间 xff0c 因此会更加高效 我们接下
  • Caused by: java.lang.UnsupportedClassVersionError: Unsupported major.minor version 52.0 (无法载入的.类

    Caused by java lang UnsupportedClassVersionError com iov common crud node TPSAlipayConfig Unsupported major minor versio
  • ubuntu18 buildroot make xconfig make gconfig faile

    make xconfig sudo apt get install qttools5 dev make gconfig sudo apt get install libglade2 dev
  • qt5的configure选项说明

    一 配置选项查看及初步解释 通过下面命令查看都有哪一些编译配置选项 span class token punctuation span span class token operator span configure span class
  • qt build

    QT笔记 嵌入式QT交叉编译与移植 含OpenGL ES2 https blog csdn net weixin 40293570 article details 117731268
  • OpenGL之gult/freeglut/glew/glfw/glad的联系与区别

    转 https blog csdn net libaineu2004 article details 105879521 转 https blog csdn net qq 40565033 article details 107715956
  • linux arm fdisk, 对未使用emmc分区扩容

    yocto编译后的wic镜像 xff0c 在刷机后 xff0c 仍有很大部分emmc未使用 xff0c 下面将未使用的emmc扩展到文件系统挂载分区 root 64 imx8dxmek df h Filesystem Size Used A
  • Shell脚本 EOF使用

    前言 xff1a EOF是End Of File的缩写 xff0c 表示自定义终止符 既然自定义 xff0c 那么EOF就不是固定的 xff0c 可以随意设置别名 xff0c 意思是把内容当作标准输入传给程序 xff0c Linux中按Ct
  • matlab之将视频逐帧保存为图片

    clc clear all close all 将视频逐帧保存为jpg图片 obj 61 VideoReader 39 F mh rgb avi 39 输入视频位置 numFrames 61 obj NumberOfFrames 帧的总数
  • 同步锁

    线程和进程 xff1a 几乎所有的操作系统都支持进程的概念 xff0c 所有运行中的任务通常对应一个进程 xff08 Process xff09 当一个程序 进入内存运行时 xff0c 即变成一个进程 而一个线程中又包含多个进程 多线程的问
  • spring容器和SpringMVC容器的区别

    说起spring容器和SpringMVC容器 xff0c 很多刚接触spring框架的同志都有点懵 xff0c 甚至是一头雾水 xff0c 分不清楚两者的关系和区别 xff0c 包括本人也是 xff0c 因此还在网上找个不少资料 这俩容器呢
  • 解决JavaWeb中文乱码问题

    解决JavaWeb的中文乱码 在日常的Java项目开发中 xff0c 乱码成了程序员必经的一道坎 乱码的缘故很好理解 xff0c 就是编码格式和解码格式不一致 xff0c JVM在编译的时候是由于 Web 容器使用了ISO 8859 1的编
  • 敏捷之伤——燃尽图

    燃尽图 xff08 burn down chart xff09 是在项目完成之前 xff0c 对需要完成的工作的一种可视化表示 燃尽图有一个Y轴 xff08 工作 xff09 和X轴 xff08 时间 xff09 理想情况下 xff0c 该
  • SQL Server查询、限制返回行数

    我们在日常开发中 xff0c 经常涉及到分页查询 特别是和页面进行交互 xff0c 分页查询已是家常便饭 现在很多的jq插件都会有分页的模块 xff0c 可以在页面上将数据更好的呈现给用户 xff0c 使得用户拥有更好的体验 像我们熟悉的有
  • mybatis

    我们在做SSM项目的时候 xff0c mybatis是其中的一部分 xff0c 是最后一步也是最重要的一步 xff0c 因为很多时候我们都是为了对数据库进行改动 前几天我在复习mybatis的时候 xff0c 就把一些可能会踩到的坑都碰到了