解决办法,不使用枚举字段,使用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;
然后就一切正常了