Mybatis 使用枚举作为查询条件

🚀 作者主页: 有来技术

🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot

🌺 仓库主页: Gitee 💫 Github 💫 GitCode

💖 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请纠正!

枚举

java 复制代码
package com.youlai.system.common.enums;
/**
 * 菜单类型枚举
 *
 * @author haoxr
 * @since 2022/4/23 9:36
 */

public enum MenuTypeEnum implements IBaseEnum<Integer> {

    NULL(0, null),
    MENU(1, "菜单"),
    CATALOG(2, "目录"),
    EXTLINK(3, "外链"),
    BUTTON(4, "按钮");

    @Getter
    @EnumValue //  Mybatis-Plus 提供注解表示插入数据库时插入该值
    private Integer value;

    @Getter
    // @JsonValue //  表示对枚举序列化时返回此字段
    private String label;

    MenuTypeEnum(Integer value, String label) {
        this.value = value;
        this.label = label;
    }
}

mapper.xml

xml 复制代码
    <!-- 获取权限和拥有权限的角色列表 -->
    <select id="getRolePermsList" resultMap="PremRolesMap">
        SELECT
            t2.`code` role_code,
            t3.perm
        FROM
            `sys_role_menu` t1
                INNER JOIN sys_role t2 ON t1.role_id = t2.id
                INNER JOIN sys_menu t3 ON t1.menu_id = t3.id
        WHERE
            type = '${@com.youlai.system.common.enums.MenuTypeEnum@BUTTON.getValue()}'
            <if test="roleCode!=null and roleCode.trim() neq ''">
                AND t2.`code` = #{roleCode}
            </if>
    </select>
相关推荐
GitNohup2 分钟前
Spring boot处理跨域问题
java·spring boot·跨域
Just_Paranoid14 分钟前
使用 IDE生成 Java Doc
java·开发语言·ide
西海天际蔚蓝29 分钟前
递归查询全量分页数据问题
java
俎树振42 分钟前
深入理解与优化Java二维数组:从定义到性能提升的全面指南
java·算法
DARLING Zero two♡1 小时前
【优选算法】Sliding-Chakra:滑动窗口的算法流(上)
java·开发语言·数据结构·c++·算法
love静思冥想1 小时前
Apache Commons ThreadUtils 的使用与优化
java·线程池优化
君败红颜1 小时前
Apache Commons Pool2—Java对象池的利器
java·开发语言·apache
意疏1 小时前
JDK动态代理、Cglib动态代理及Spring AOP
java·开发语言·spring
小王努力学编程1 小时前
【C++篇】AVL树的实现
java·开发语言·c++
找了一圈尾巴1 小时前
Wend看源码-Java-集合学习(List)
java·学习