亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MyBatis Mapper中 @Select注解調(diào)用靜態(tài)常量的問(wèn)題分析

 更新時(shí)間:2023年06月06日 14:52:15   作者:java李楊勇  
在Java編碼中,我們通常會(huì)把這些數(shù)字或者字符串定義在常量類或者接口中,可以直接在mapper中也可以使用這些常量就比較好,這篇文章主要介紹了MyBatis Mapper中 @Select注解調(diào)用靜態(tài)常量,需要的朋友可以參考下

MyBatis Mapper中 @Select注解調(diào)用靜態(tài)常量

Java項(xiàng)目在使用MyBatis技術(shù),編寫mapper SQL時(shí),如果在其中的ognl表達(dá)式或者sql中直接使用一些數(shù)字或者字符串的話,會(huì)造成難以維護(hù)的問(wèn)題。在Java編碼中,我們通常會(huì)把這些數(shù)字或者字符串定義在常量類或者接口中,可以直接在mapper中也可以使用這些常量就比較好。MybBatis@Select注解標(biāo)簽直接編寫SQL,也是支持這樣的需求的。

Java方法變量:

包名:com.yt.nbdt.adcenter.controller.vo

 public static final String BELATE = "遲到";
 public static final String LEAVE_EARLY ="早退";
 public static final String LACK_OF_CARD = "缺卡";

mapper  @Select注解使用 

//根據(jù)用戶姓名和月份統(tǒng)計(jì)用戶上班缺卡次數(shù)
    @Select({
            "<script>",
            "select  count(1) from attendance_record  where 1=1  AND clock_in_res ='${@com.yt.nbdt.adcenter.controller.vo.AttendanceRecordVO@LACK_OF_CARD}'",
            "<if test='username != null'> and username = #{username}</if>",
            "<if test='attendanceTime != null'>and attendance_time like '%${attendanceTime}%' </if>",
            "</script>"
    })
    Integer getworkLackcardNum(@Param("username") String username, @Param("attendanceTime") String attendanceTime);

mybatis mapper.xml中使用靜態(tài)方法或者靜態(tài)常量 

靜態(tài)方法

語(yǔ)法

${@全限定類名@方法名}

示例

  • 例1
<insert id="saveArticleLabel">
    INSERT INTO dcy_article_label(id, article_id, label_id)
    VALUES
    <foreach collection="labelIds" item="item" separator=",">
        ('${@com.baomidou.mybatisplus.core.toolkit.IdWorker@getId()}', #{articleId}, #{item})
    </foreach>
</insert>
  • 例2
<choose>
    // 需要靜態(tài)方法返回true還是false
    <when test="@staticClass@staticMethod(args)">
         // 需要拼接的SQL
    </when>
</choose>
  • 例3
select
<include refid="Base_Column"/>
from xxx
where valid = 1
<if test="record.code != null and record.code.trim().length() > 0">
  and code ${@com.common.util.MapperHelp@getQuery("record.code",record.code)}
</if>
public class MapperHelp {
    public static String getQuery(String propertyField, String value) {
    	return "= 'xxx'";
    }
}

靜態(tài)常量

語(yǔ)法

${@全限定類名@常量名}

示例

select
<include refid="Base_Column"/>
from xxx
where valid = ${@com.common.util.MapperHelp@VALID}
public class MapperHelp {
    public static final String VALID = "1";
}

到此這篇關(guān)于MyBatis Mapper中 @Select注解調(diào)用靜態(tài)常量的問(wèn)題分析的文章就介紹到這了,更多相關(guān)MyBatis Mapper靜態(tài)常量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java創(chuàng)建文件夾及文件實(shí)例代碼

    Java創(chuàng)建文件夾及文件實(shí)例代碼

    Java創(chuàng)建文件夾及文件實(shí)例代碼,需要的朋友可以參考一下
    2013-04-04
  • RabbitMQ中的Connection和Channel信道詳解

    RabbitMQ中的Connection和Channel信道詳解

    這篇文章主要介紹了RabbitMQ中的Connection和Channel信道詳解,信道是建立在 Connection 之上的虛擬連接,RabbitMQ 處理的每條 AMQP 指令都是通過(guò)信道完成的,需要的朋友可以參考下
    2023-08-08
  • Java TreeMap排序算法實(shí)例

    Java TreeMap排序算法實(shí)例

    這篇文章主要介紹了Java TreeMap排序算法,結(jié)合實(shí)例形式分析了TreeMap排序算法的原理、實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-07-07
  • java微信企業(yè)號(hào)開發(fā)之通訊錄

    java微信企業(yè)號(hào)開發(fā)之通訊錄

    這篇文章主要為大家詳細(xì)介紹了java微信企業(yè)號(hào)開發(fā)之通訊錄的相關(guān)資料,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 新手了解java基礎(chǔ)知識(shí)(二)

    新手了解java基礎(chǔ)知識(shí)(二)

    這篇文章主要介紹了Java基礎(chǔ)知識(shí),本文介紹了Java語(yǔ)言相關(guān)的基礎(chǔ)知識(shí)、歷史介紹、主要應(yīng)用方向等內(nèi)容,需要的朋友可以參考下,希望對(duì)你有所幫助
    2021-07-07
  • Spring?Data?JPA系列QueryByExampleExecutor使用詳解

    Spring?Data?JPA系列QueryByExampleExecutor使用詳解

    這篇文章主要為大家介紹了Spring?Data?JPA系列QueryByExampleExecutor使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • MyBatis屬性名和字段名配置不一致的解決

    MyBatis屬性名和字段名配置不一致的解決

    在使用MyBatis進(jìn)行持久化框架開發(fā)時(shí),經(jīng)常會(huì)遇到屬性名和數(shù)據(jù)庫(kù)字段名不一致的情況,本文主要介紹了MyBatis屬性名和字段名配置不一致的解決,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • Java之如何關(guān)閉流

    Java之如何關(guān)閉流

    這篇文章主要介紹了Java之如何關(guān)閉流問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • zookeeper實(shí)現(xiàn)分布式鎖

    zookeeper實(shí)現(xiàn)分布式鎖

    這篇文章主要為大家詳細(xì)介紹了基于zookeeper實(shí)現(xiàn)分布式鎖,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • 為何Java單例模式我只推薦兩種

    為何Java單例模式我只推薦兩種

    這篇文章主要給大家介紹了關(guān)于Java單例模式推薦的兩種模式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評(píng)論