当前位置: 首页 > news >正文

MyBatis查询优化:枚举在条件构建中的妙用

🚀 作者主页: 有来技术
🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot
🌺 仓库主页: Gitee 💫 Github 💫 GitCode
💖 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请纠正!

枚举定义

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

在查询条件中使用定义的枚举作为条件

    <!-- 获取权限和拥有权限的角色列表 --><select id="getRolePermsList" resultMap="PremRolesMap">SELECTt2.`code` role_code,t3.permFROM`sys_role_menu` t1INNER JOIN sys_role t2 ON t1.role_id = t2.idINNER JOIN sys_menu t3 ON t1.menu_id = t3.idWHEREtype = '${@com.youlai.system.common.enums.MenuTypeEnum@BUTTON.getValue()}'<if test="roleCode!=null and roleCode.trim() neq ''">AND t2.`code` = #{roleCode}</if></select>

开源项目

  • SpringCloud + Vue3 微服务商城
GithubGitee
后端youlai-mall 🍃youlai-mall 🍃
前端mall-admin🌺mall-admin 🌺
移动端mall-app 🍌mall-app 🍌
  • SpringBoot 3+ Vue3 单体权限管理系统
GithubGitee
后端youlai-boot 🍃youlai-boot 🍃
前端vue3-element-admin 🌺vue3-element-admin 🌺

相关文章:

MyBatis查询优化:枚举在条件构建中的妙用

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall &#x1f343; vue3-element-admin &#x1f343; youlai-boot &#x1f33a; 仓库主页&#xff1a; Gitee &#x1f4ab; Github &#x1f4ab; GitCode &#x1f496; 欢迎点赞…...

Isaac Sim教程04 Isaac Sim的高级使用

Isaac Sim 高级使用 版权信息 Copyright 2023 Herman YeAuromix. All rights reserved.This course and all of its associated content, including but not limited to text, images, videos, and any other materials, are protected by copyright law. The author holds…...

《数据结构、算法与应用C++语言描述》-线索二叉树的定义与C++实现

_23Threaded BinaryTree 可编译运行代码见&#xff1a;GIithub::Data-Structures-Algorithms-and-Applications/_24Threaded_BinaryTree 线索二叉树定义 在普通二叉树中&#xff0c;有很多nullptr指针被浪费了&#xff0c;可以将其利用起来。 首先我们要来看看这空指针有多少…...

删除误提交的 git commit

背景描述 某次的意外 commit 中误将密码写到代码中并且 push 到了 remote repo 里面, 本文将围绕这个场景讨论如何弥补. 模拟误提交操作 在 Gitee 创建一个新的 Repo, clone 到本地 git clone https://gitee.com/lpwm/myrepo.git创建两个文件, commit 后 push 到 remote 作…...

机器学习---pySpark案例

1、统计PV&#xff0c;UV 1.if __name__ __main__: 2. conf SparkConf() 3. conf.setMaster("local") 4. conf.setAppName("test") 5. sc SparkContext(confconf) 6. 7. #pv 8. sc.textFile("./pvuv").map(lambda line:(l…...

【链表Linked List】力扣-24 两两交换链表中的节点

目录 题目描述 解题过程 题目描述 给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。 示例 1&#xff1a; 输入&#xff1a;he…...

企业微信协议开发,API接口调用

产品说明 一、 hook版本&#xff1a;企业微信hook接口是指将企业微信的功能封装成dll&#xff0c;并提供简易的接口给程序调用。通过hook技术&#xff0c;可以在不修改企业微信客户端源代码的情况下&#xff0c;实现对企业微信客户端的功能进行扩展和定制化。企业微信hook接口…...

代码随想录算法训练营 ---第五十五天

今天是 动态规划&#xff1a;编辑距离问题。 第一题&#xff1a; 简介&#xff1a; 动态规划五部曲&#xff1a; 1.确定dp数组的含义 dp[i][j] 表示以下标i-1为结尾的字符串s&#xff0c;和以下标j-1为结尾的字符串t&#xff0c;相同子序列的长度为dp[i][j]。 2.确定递推公…...

【Intel/Altera】 全系列FPGA最新汇总说明,持续更新中

前言 2023年11月14日英特尔 FPGA中国技术日&#xff0c;Intel刚发布了新的FPGA系列&#xff0c;官网信息太多&#xff0c;我这里结合以前的信息&#xff0c;简单汇总更新一下&#xff0c;方便大家快速了解Intel/Altera FPGA家族。 目录 前言 Altera和Intel 型号汇总 1. Agi…...

利用flask将yolov5算法封装成在线推理服务

本脚本主要参考了yolov5工程文件夹下面的detect.py,将yolov5算法封装成了一个在线的推理服务,可以接受app请求,然后推理图片,并将检测结果以json返回,该服务可以供数据标注平台请求。 from flask import * import shutil import json import os import pynvml import pand…...

vue3父子传值实现弹框功能

在Vue3中&#xff0c;我们可以通过 provide 和 inject 来实现父子组件之间的数据传递&#xff0c;这也适用于实现弹框功能。下面是一个简单的例子&#xff1a; 父组件代码&#xff1a; <template><div><button click"showDialog">打开弹框</b…...

C++入门【2-C++ 数据类型】

C 数据类型 使用编程语言进行编程时&#xff0c;需要用到各种变量来存储各种信息。变量保留的是它所存储的值的内存位置。这意味着&#xff0c;当您创建一个变量时&#xff0c;就会在内存中保留一些空间。 您可能需要存储各种数据类型&#xff08;比如字符型、宽字符型、整型…...

按照官网文档 通过useExtendedLib扩展库 引入WeUI,报错 组件未定义 | 解决办法

检查开发者工具版本是否过老 参考博客 不要使用 游客模式&#xff0c;游客模式不支持&#xff0c;请注册Appid 使用。 注意 扩展库方式 和 npm 方式不能同时使用&#xff0c;会有相应报错...

Chat-GPT原理

Chat-GPT原理核心:基于Transformer 架构 ​ 以下是参考文献的部分截图原文说明&#xff1a; ​ Transformers are based on the “attention mechanism,” which allows the model to pay more attention to some inputs than others, regardless of where they show up in t…...

GODOC命令无效,原因是需要手动安装

在看《GO程序设计语言》这本书&#xff0c;按照其中的内容&#xff0c;想看下GO自带的包的文档。 书中讲&#xff0c;可以直接输入GoDOC命令来打开一个服务器&#xff0c;从而可以用浏览器访问文档库。输入命令后&#xff0c;系统提示找不到该命令。 查了资料后才发现&#xff…...

忽略python运行出现的大量警告

添加以下代码即可 import warnings warnings.filterwarnings(ignore)...

【Polar靶场WEB签到】

题目&#xff1a; <?phperror_reporting(0);$file $_GET[file];if(!isset($file))$file 1;$file str_replace(../, , $file);include_once($file.".php");highlight_file(__FILE__); ?>解答&#xff1a;1、进入index页面&#xff0c;说让你加弟弟&#x…...

Linux详解——常用命令(二)

目录 一、常用命令 1.进程相关命令 2.vi命令 3.软件相关命令 RPM命令 YUM命令 4.用户和组相关命令 5.权限相关命令 一、常用命令 1.进程相关命令 # 1.ps 询在当前控制台上运行的进程 ps -aux 说明:查询系统中所有运行的进程&#xff0c;包括后台进程&#xff0c;其…...

TCP首部格式_基本知识

TCP首部格式 表格索引: 源端口目的端口 序号 确认号 数据偏移保留 ACK等 窗口检验和紧急指针 TCP报文段首部格式图 源端口与目的端口: 各占16位 序号:占32比特&#xff0c;取值范围0~232-1。当序号增加到最后一个时&#xff0c;下一个序号又回到0。用来指出本TCP报文段数据载…...

MIT线性代数笔记-第23讲-微分方程,exp(At)

目录 23.微分方程&#xff0c; e x p ( A t ) exp(At) exp(At)用矩阵求解微分方程矩阵指数二阶常微分方程 打赏 23.微分方程&#xff0c; e x p ( A t ) exp(At) exp(At) 用矩阵求解微分方程 例&#xff1a; { d u 1 d t − u 1 2 u 2 d u 2 d t u 1 − 2 u 2 \left \{ \b…...

ChatGPT对话导出工具:一键保存结构化对话记录到Markdown

1. 项目概述&#xff1a;一个帮你“打包”对话记录的工具如果你经常使用ChatGPT的网页版进行深度对话&#xff0c;无论是用它来辅助编程、学习新知识&#xff0c;还是进行创意写作&#xff0c;你可能会遇到一个共同的痛点&#xff1a;那些充满价值的对话记录&#xff0c;被“锁…...

STM32F103C8T6驱动MAX30102:从I2C配置到心率可视化,一个LED灯带你看懂心跳

STM32F103C8T6驱动MAX30102&#xff1a;从I2C配置到心跳可视化实战指南 当LED灯随着你的心跳闪烁时&#xff0c;冰冷的电子元件仿佛被赋予了生命。本文将带你深入探索如何用STM32F103C8T6驱动MAX30102血氧传感器&#xff0c;将生物信号转化为直观的视觉反馈。不同于简单的数据采…...

从零开始:用MC1648和AD835搭建一个63MHz调幅无线发射器(附完整电路图)

从零开始&#xff1a;用MC1648和AD835搭建63MHz调幅无线发射器实战指南 在电子工程领域&#xff0c;高频电路设计一直被视为"皇冠上的明珠"&#xff0c;而调幅无线发射器则是其中最具代表性的项目之一。本文将带你从零开始&#xff0c;用MC1648压控振荡器和AD835乘法…...

AgenticHub:构建AI智能体的开源框架与核心架构解析

1. 项目概述&#xff1a;AgenticHub是什么&#xff0c;以及它为何值得关注 最近在AI应用开发领域&#xff0c;一个名为“AgenticHub”的开源项目在GitHub上引起了不小的讨论。这个由victordedomenico发起的项目&#xff0c;定位非常清晰&#xff1a;它旨在成为一个构建、编排和…...

Python爬虫利器PyQuery:用jQuery语法高效解析HTML与数据提取

1. PyQuery&#xff1a;让Python爬虫和数据处理拥有jQuery的丝滑体验如果你和我一样&#xff0c;既写Python脚本处理数据&#xff0c;又偶尔需要和前端HTML打交道&#xff0c;那你一定经历过这样的纠结&#xff1a;面对一堆杂乱无章的HTML标签&#xff0c;用正则表达式吧&#…...

基于MCP协议构建TikTok趋势分析服务器:架构设计与实战指南

1. 项目概述与核心价值最近在折腾一个挺有意思的项目&#xff0c;叫trendsmcp/tiktok-trends-mcp。乍一看这个名字&#xff0c;你可能觉得这又是一个抓取TikTok数据的工具&#xff0c;市面上这类工具确实不少。但深入用下来&#xff0c;我发现它的定位和设计思路非常独特&#…...

在Gazebo中为Husky机器人集成Livox Mid-70传感器仿真

1. 环境准备与基础概念 在开始为Husky机器人集成Livox Mid-70传感器之前&#xff0c;我们需要先搭建好基础环境。Gazebo作为一款功能强大的机器人仿真工具&#xff0c;能够模拟真实物理环境中的传感器行为。Livox Mid-70是一款固态激光雷达&#xff0c;相比传统机械式雷达&…...

iOS开发效率提升:Xcode光标规则与编辑技巧全解析

1. 项目概述&#xff1a;一个iOS开发者的“光标规则”宝库 如果你是一名iOS开发者&#xff0c;或者对iOS应用开发感兴趣&#xff0c;那么你一定经历过这样的时刻&#xff1a;在Xcode里写代码&#xff0c;光标在屏幕上闪烁&#xff0c;你希望它能更“聪明”一点——比如&#xf…...

为AI应用构建低成本实时搜索能力:gpt-search开源项目实战指南

1. 项目概述与核心价值最近在折腾一些AI应用开发&#xff0c;发现一个挺有意思的现象&#xff1a;很多开发者想给自己的GPT应用加上联网搜索能力&#xff0c;但往往卡在第一步——如何高效、稳定且低成本地获取实时网络信息。自己从零搭建一个搜索引擎爬虫&#xff1f;光是处理…...

构建数字情绪护盾:基于情感分析与规则引擎的个性化内容过滤系统

1. 项目概述&#xff1a;构建你的数字情绪护盾在数字生活的洪流中&#xff0c;我们每天都被海量的信息、社交互动和网络噪音所包围。你有没有过这样的感觉&#xff1a;刷了半小时手机&#xff0c;不仅没放松&#xff0c;反而感到莫名的焦虑和疲惫&#xff1f;或者&#xff0c;在…...