mybatisplus之使用@Select解讀
mybatisplus使用@Select
在自己的mapper文件里面 比如我這個是ckDao.java文件,寫個方法,然后就可以用 @Autowired 注冊這個mapper,就會去執(zhí)行sql語句
? ? @Select("SELECT DISTINCT ?name FROM `ck` where company = '順網(wǎng)' and deleted = 1")
? ? List<CkEntity> listCompany();
? ? @Select("SELECT count(*) FROM `ck` where company = '順網(wǎng)' and deleted = 1" + " and name like '%${name}%'")
? ? String countCompanyData(@Param("name") String name);實現(xiàn)方法
? ? @Override
? ? public XXX listCompanyData() {
? ? ? ? List<CkEntity> ckEntities = ckDao.listCompany();
? ? ? ? return XXX;
? ? }mybatisplus @Select注解參數(shù)判空及SQL拼接
場景
在@Select注解使用中,自定義sql時,會存在一個或多個查詢條件的情況,這樣在注解形式sql里,插入?yún)?shù)需要進行判空
實例
@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語法寫
條件匹配 =用 #{}包裝傳進來的參數(shù),如果是模糊查詢,需要使用函數(shù)concat拼接%字符串
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java如何發(fā)送get請求獲取數(shù)據(jù)(附代碼)
這篇文章主要給大家介紹了關(guān)于java如何發(fā)送get請求獲取數(shù)據(jù)的相關(guān)資料,Java中的GET請求方法是HTTP協(xié)議中的一種請求方式,用于向服務(wù)器請求獲取資源,需要的朋友可以參考下2023-10-10
AndroidStudio無法新建Java工程的簡單解決辦法
AS創(chuàng)建java工程是非常麻煩的,AS沒有提供直接創(chuàng)建java工程的方法且常常無法新建,這篇文章主要給大家介紹了關(guān)于AndroidStudio無法新建Java工程的簡單解決辦法,需要的朋友可以參考下2024-06-06
使用SpringBoot配置多數(shù)據(jù)源的經(jīng)驗分享
這篇文章主要介紹了使用SpringBoot配置多數(shù)據(jù)源的經(jīng)驗分享,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-04-04
關(guān)于spring-security(記住密碼,CSRF)
文章主要介紹了Spring Security中的PersistentTokenRepository、CSRF保護機制以及如何在登錄頁面添加記住我功能,并分享了相關(guān)實現(xiàn)代碼和配置2024-11-11
詳解Mybatis核心類SqlSessionFactory的構(gòu)建
這篇文章主要為大家詳細介紹了Mybatis核心類SqlSessionFactory的構(gòu)建過程,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2022-12-12
Java中DTO與Entity拷貝轉(zhuǎn)換的方法小結(jié)
在?Java?開發(fā)中,DTO(Data?Transfer?Object)和?Entity(實體類)是常見的兩種數(shù)據(jù)模型,本文將介紹幾種常見的工具類和自定義方式來實現(xiàn)這種轉(zhuǎn)換,感興趣的可以了解下2025-02-02
EditPlus運行java時從鍵盤輸入數(shù)據(jù)的操作方法
這篇文章主要介紹了EditPlus運行java時從鍵盤輸入數(shù)據(jù)的操作方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03

