mybatisplus之使用@Select解读

 更新时间:2023年07月01日 15:51:56   作者:强风吹拂str  
这篇文章主要介绍了mybatisplus之使用@Select解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mybatisplus使用@Select

在自己的mapper文件里面 比如我这个是ckDao.java文件,写个方法,然后就可以用 @Autowired 注册这个mapper,就会去执行sql语句

    @Select("SELECT DISTINCT  name FROM `ck` where company = '顺网' and deleted = 1")
    List<CkEntity> listCompany();
    @Select("SELECT count(*) FROM `ck` where company = '顺网' and deleted = 1" + " and name like '%${name}%'")
    String countCompanyData(@Param("name") String name);

实现方法

    @Override
    public XXX listCompanyData() {
        List<CkEntity> ckEntities = ckDao.listCompany();
        return XXX;
    }

mybatisplus @Select注解参数判空及SQL拼接

场景

在@Select注解使用中,自定义sql时,会存在一个或多个查询条件的情况,这样在注解形式sql里,插入参数需要进行判空

实例

@Select({"<script>"+
"SELECT DISTINCT "+
"a.monitor_id monitorId," +
"a.monitor_name monitorName," +
"a.target," +
"a.priority,"+
"a.gmt_create gmtCreate " +
"FROM "+
"alert a,"+
"( SELECT monitor_id, max( gmt_create ) gmt_update FROM alert GROUP BY monitor-id ) b " +
"WHERE " +
"a.monitor_id = b.monitor_id "+
"AND a.gmt_create = b.gmt_update " +
"AND DATEDIFF(gmt_create,NOW())=0 "+
"<when test='times!=null'>" +
"AND times = #{times}"+
"</when>"+
"<when test='monitorName!=null'" +
"AND monitor_name like concat('%',#(monitorName},'%')" 
"</when>"+
"<when test='priority!=null'" +
"AND priority = #{priority}"+
"</when>"+
"</script>"})
List<IndicateDetail> getIndicatorList(@Param("monitorName")String monitor_name,@Param("times")String times,@Param("priority")String priority);

用script标签包围,然后像xml语法写

条件匹配 =用 #{}包装传进来的参数,如果是模糊查询,需要使用函数concat拼接%字符串

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 分析jackjson的安全漏洞CVE-2019-14379

    分析jackjson的安全漏洞CVE-2019-14379

    这篇文章主要介绍了jackjson的使用及CVE-2019-14379漏洞分析,ackson知识点序列化和反序列化,setName和getName调用顺序,通过实例代码讲解的很详细,需要的朋友可以参考下
    2021-06-06
  • Commons beanutils组件简介

    Commons beanutils组件简介

    这篇文章主要介绍了commons beanutils组件的相关内容,以及部分实例和基本用法,需要的朋友可以参考下
    2017-09-09
  • spring-boot-maven-plugin:unknown的完美解决方法

    spring-boot-maven-plugin:unknown的完美解决方法

    这篇文章主要介绍了spring-boot-maven-plugin:unknown的完美解决方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 详解Java高并发编程之AtomicReference

    详解Java高并发编程之AtomicReference

    此篇文章主要介绍了AtomicReference的出现背景,AtomicReference的使用场景,以及介绍了AtomicReference的源码,重点方法的源码分析
    2021-06-06
  • Spring MVC内置过滤器功能示例详解

    Spring MVC内置过滤器功能示例详解

    这篇文章主要为大家介绍了Spring MVC内置过滤器使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • 详解如何使用maven生成可以执行的jar

    详解如何使用maven生成可以执行的jar

    这篇文章主要介绍了详解如何使用maven生成可以执行的jar,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • 常用java正则表达式的工具类

    常用java正则表达式的工具类

    这篇文章主要为大家详细介绍了常用java正则表达式的工具类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • IDEA启动tomcat状态404的解决

    IDEA启动tomcat状态404的解决

    在使用Idea进行Java Web开发过程中,经常会遇到Tomcat出现404错误的问题,本文就来介绍了IDEA启动tomcat状态404的解决,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • 使用纯java config来配置spring mvc方式

    使用纯java config来配置spring mvc方式

    这篇文章主要介绍了使用纯java config来配置spring mvc方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • java中Object类4种方法详细介绍

    java中Object类4种方法详细介绍

    大家好,本篇文章主要讲的是java中Object类4种方法详细介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01

最新评论