mybatis動態sql根據java枚舉判斷不執行,執行otherwise,解決辦法

解決辦法,不使用枚舉字段,使用string類型字段;



更改之前代碼的錯誤代碼

public enum EventType implements IEnum<EventType> {

UNKNOWN(0, "未知"), RED_CARD(1, "紅牌"), YELLOW_CARD(2, "黃牌"), GOAL(3, "進球"), SUBSTITUTION(4, "換人");


枚舉類;


某類中存在這個枚舉類的屬性

private EventType eventType;


mapper文件:

<choose>
                <when test="item.eventType == 'RED_CARD'">
                    1
                </when>  
                <otherwise>
                    0
                </otherwise>
            </choose>

即使 item.eventType爲RED_CARD 也執行0,不會執行1,


更改後代碼 


將類中的枚舉值屬性更改爲string類型


private String eventType;


然後就一切正常了





發佈了44 篇原創文章 · 獲贊 14 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章