SpringBoot下Mybatis-注解动态sql开发的坑

比较简单篇:众所周知,Mybatis支持动态标签编写sql,编写简单sql时方式简单的不要不要的,但是当遇到复杂的sql语句时遇到的坑就比较难受了:

坑点1:if 标签下 < 号会出错!!!识别不了识别不了

所以必须转换


    >            对应             >

    >=         对应              >=

    <             对应              <(会报错  相关联的 "test" 属性值不能包含 '<' 字符)

    <=          对应               <=(会报错  相关联的 "test" 属性值不能包含 '<' 字符)

SpringBoot下Mybatis-注解动态sql开发的坑_第1张图片

 

注:转义字符 总是在你最需要的时候出现

坑点2:当需要用到注解 去写动态标签时,需要加上 标签,不然也会报错

坑点3: 编写注解动态sql时 有俩种方式

1.坑2所述 添加script标签写就好了,此举写的话 坏处就是 后面做扩容或修改比较麻烦,因为一大串字符串 不是那么容易改动的

2.使用mybatis提供的 SqlProvider方法,进行定制化语句编写,有点就是灵活,分解性强,坏处就是 又要多写一个方法!!!

提供截图参考:即dao层写明provider,再指定 类以及类的方法名,,而方法中实现sql注入方式类似hibernate的复杂编写,当我们尝试1的方法却不能成功时,不如就退一步海阔天空把~~,多写个方法呗

SpringBoot下Mybatis-注解动态sql开发的坑_第2张图片

坑点4:提供一些常用的动态标签结构

 

你可能感兴趣的:(SpringBoot下Mybatis-注解动态sql开发的坑)