mapper @Select()注解开发,使用模板 if 和循环
if
@Select({"<script>",
"SELECT " +
" mu.id userId, " +
" eui.id userInfoId, " +
" mu.user_name userName, " +
" com.company_id AS comId, " +
" com.company_name comName, " +
" eui.talent_type talentType, " +
" eui.self_introduction selfIntroduction, " +
" eui.working_years workingYears, " +
" eui.education education, " +
" mu.icon_url iconUrl " +
" FROM " +
" mky_user mu, " +
" em_company c, " +
" em_company_record com, " +
" em_user_info eui, " +
" em_aptitude_maintain_approve ea " +
" WHERE 1=1 ",
" <when test='searchStr!=null'> ",
" AND ( mu.user_name LIKE #{searchStr} OR com.company_name LIKE #{searchStr} ) ",
" </when> ",
" <when test='firstId!=null'> ",
" AND ea.first_id = #{firstId} ",
" </when> ",
" <when test='secondId!=null'> ",
" AND ea.second_id = #{secondId} ",
" </when> ",
" <when test='threeId!=null'> ",
" AND ea.three_id = #{threeId} ",
" </when> ",
" <when test='startDate!=null'> ",
" AND ea.end_date > #{startDate} ",
" </when> ",
" <when test='endDate!=null'> ",
" AND ea.end_date < #{endDate} ",
" </when> ",
" AND c.id = com.company_id " +
" AND mu.com_id = c.id " +
" AND mu.id = eui.user_id " +
" AND eui.page_display_flag = 1 " +
" AND ea.user_info_id = eui.id " +
" AND ea.end_date > DATE_FORMAT( now( ), '%Y-%m-%d' ) " +
" AND mu.del_flag = 0 " +
" AND ea.del_flag = 0 " +
" AND eui.del_flag = 0 " +
" AND c.del_flag = 0 " +
" AND com.del_flag = 0 " +
" GROUP BY eui.id " +
" ORDER BY " +
" eui.update_date DESC " +
" </script> "})
List<TalentsResultVo> selectAllTalentsByParams(@Param("firstId") String firstId, @Param("secondId") String secondId, @Param("threeId") String threeId, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("searchStr") String searchStr);
循环
@Select({
" <script> ",
" select ",
" id ,stream_id 'streamId' , project_id 'projectId' ,push_stream_addr 'pushStreamAddr' , rtmp_play_addr 'rtmpPlayAddr' , flv_play_addr 'flvPlayAddr' , hls_play_addr 'hlsPlayAddr' , monitor_state 'monitorState', monitor_name 'monitorName' , note, state_reason 'stateReason' , ip_addr 'ipAddr' ",
" from bi_real_time_monitoring ",
" where project_id in ",
" <foreach collection='projectIds' item='id' open='(' separator=',' close=')'> ",
" #{id} ",
" </foreach> ",
" and delFlag =0 and monitor_state != 2 ",
" </script> "
})
List<BiRealTimeMonitoring> selectBiRealTimeMonitoringByProjectIds(@Param("projectIds") List<String> projectIds);
注意一个报错
mapper @Select()注解开发,使用模板 if 和循环的更多相关文章
- Spring笔记04_AOP注解开发_模板_事务
目录 1. Spring基于AspectJ的注解的AOP开发 1. 1 SpringAOP的注解入门 1.2 Spring的AOP的注解通知类型 1.2.1 @Before:前置通知 1.2.2 @A ...
- Spring---AOP注解开发&jdbc模板&Spring事务管理
一.AOP注解开发 此处需要回忆一遍AOP的概念.简单的来说,AOP就是利用动态代理技术,做到不触动源代码但却扩展了功能.那么就需要一个被扩展的对象和一个“新的功能”,例如说给某类的saveUser方 ...
- Spring_AOP基于AspectJ的注解开发&JDBC的模板使用&事务管理(学习笔记3)
一:AOP基于AspectJ的注解开发 1,简单的实例: 1)引入相应的jar包 2)在配置文件里引入相关约束 <beans xmlns="http://www.springfra ...
- spring boot纯注解开发模板
简介 spring boot纯注解开发模板 创建项目 pom.xml导入所需依赖 点击查看源码 <dependencies> <dependency> <groupId& ...
- Spring入门(三)— AOP注解、jdbc模板、事务
一.AOP注解开发 导入jar包 aop联盟包. aspectJ实现包 . spring-aop-xxx.jar . spring-aspect-xxx.jar 导入约束 aop约束 托管扩展类和被扩 ...
- Mybatis注解开发
mybatis 的常用注解: @Insert:实现新增 @Update:实现更新 @Delete:实现删除 @Select:实现查询 @Result:实现结果集封装 @Results:可以与 @Res ...
- Struts2------拦截器和标签库和注解开发
一.解析Struts2源码中拦截器的执行 客户端请求Action,执行前端控制器,在前端控制器内部创建了Action的代理类,调用代理类的execute方法,在execute方法内部执行ActionI ...
- SpringMVC-Mybatis整合和注解开发
SpringMVC-Mybatis整合和注解开发SpringMVC-Mybatis整合整合的思路在mybatis和spring整合的基础上 添加springmvc.spring要管理springmvc ...
- MyBatis框架之注解开发
MyBatis注解开发 @Insert注解注解属性value:写入SQL语句 @Options注解实现添加新数据的主键封装注解属性useGeneratedKeys:使用生成的主键,配置为truekey ...
随机推荐
- Spark机器学习基础-无监督学习
0.K-means from __future__ import print_function from pyspark.ml.clustering import KMeans#硬聚类 #from p ...
- solr的命令
Start the Server If you didn’t start Solr after installing it, you can start it by running bin/solr ...
- vue打包后.woff字体文件路径问题处理
在执行 npm run build 命令打包后,如果出现 .woff 等字体文件找不到的情况 通过设置 vue-style-loader 打包前缀路径解决
- Mysql踩坑 自动更新的时间只允许有一个
执行如下SQL创建表: CREATE TABLE aa ( a INT, b TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, c TIMESTAMP DEFAULT CU ...
- Flutter——Checkbox组件、CheckboxListTile(多选框组件)
Checkbox组件 Checkbox组件常用的属性: 属性 描述 value true 或者 false onChanged 改变的时候触发的事件 activeColor 选中的颜色.背景颜色 c ...
- vue-quill-editor + iview 实现富文本编辑器及图片上传
1.npm 安装 vue-quill-editor npm install vue-quill-editor 2.再main.js中引入 import VueQuillEditor from 'vue ...
- 浅谈Java中的AOP面向切面的变成和控制反转IOC
https://blog.csdn.net/hi_kevin/article/details/7325554 https://www.cnblogs.com/zedosu/p/6632260.html ...
- linux下解决find 1000/gfs无权限
用find查找根目录下的文件时,比如sudo find . -name \*test,就会出现1000/gfs无权限的情况 用一下方法可以正常使用 sudo find . -name test 2&g ...
- python常用内置方法
常用内建函数# 如何在遍历一个列表的同时获取当前下标? # 普通人的做法 list = [1, 2, 3, 4, 5, 6] index = 0 for i in list: print('下标%s' ...
- webpack 配置react脚手架(二):热更新
下面继续配置 webpack dev server hot module replacement: 首先配置dev-server 安装 npm i webpack-dev-ser ...