1.Mybatis-XML模板

SELECT sr.ROLE_ID AS roleId, sr.ROLE_NAME AS roleName, sr.IS_ACTIVE AS isActive, sr.REMARK AS remark, sr.CREATE_DATETIME AS createDatetime, CONCAT(su.FIRST_NAME,su.LAST_NAME) AS createUser, sr.UPDATE_DATETIME AS updateDatetime, CONCAT(su2.FIRST_NAME,su2.LAST_NAME) AS createUser FROM sys_role sr LEFT JOIN sys_user su ON su.USER_ID=sr.CREATE_USER LEFT JOIN sys_user su2 ON su2.USER_ID=sr.UPDATE_USER WHERE sr.IS_ACTIVE=’Y’ AND sr.ROLE_NAME like CONCAT(‘%’,#{roleName},’%’)

<insert id="insertRole" parametertype="com.serlyf.system.entity.Role">
    insert into sys_role (ROLE_ID,ROLE_NAME,REMARK,IS_ACTIVE,CREATE_DATETIME,CREATE_USER)
    values (#{roleId}, #{roleName}, #{remark},#{isActive}, #{createDatetime}, #{createUser})
</insert>

<update id="updateRole" parametertype="com.serlyf.system.entity.Role">
    update sys_role
    <set>
        <if test="roleName != null">
            ROLE_NAME = #{roleName},
        </if>
        <if test="remark != null">
            REMARK = #{remark},
        </if>
        <if test="isActive != null">
            IS_ACTIVE = #{isActive},
        </if>
        <if test="updateDatetime != null">
            UPDATE_DATETIME = #{updateDatetime},
        </if>
        <if test="updateUser != null">
            UPDATE_USER = #{updateUser}
        </if>
    </set>
    where ROLE_ID = #{roleId}
</update>

<delete id="deleteRoleByRoleId" parametertype="java.lang.String">
    update sys_role set IS_ACTIVE='N'
    where ROLE_ID = #{roleId}
</delete>

<insert id="batchInsertMenuRoleRef" parametertype="java.util.List">
    insert into sys_menu_role_ref (ID,ROLE_ID,MENU_ID)VALUES
    <foreach collection="list" item="item" index="index" separator=",">
        (#{item.id},#{item.roleId},#{item.menuId})
    </foreach>
</insert>

<select id="getRoleListByUserId" parametertype="java.lang.String" resulttype="com.serlyf.system.entity.Role">
    SELECT
    sr.ROLE_ID AS roleId,
    sr.ROLE_NAME AS roleName,
    sr.IS_ACTIVE AS isActive,
    sr.REMARK AS remark,
    sr.CREATE_DATETIME AS createDatetime,
    sr.CREATE_USER AS createUser,
    sr.UPDATE_DATETIME AS updateDatetime,
    sr.UPDATE_USER AS updateUser
    FROM
    sys_role sr
    LEFT JOIN sys_user_role_ref surr ON surr.ROLE_ID=sr.ROLE_ID
    WHERE sr.IS_ACTIVE='Y' AND surr.USER_ID=#{userId}
</select>

Original: https://www.cnblogs.com/NIAN2011/p/16647785.html
Author: NIANER2011
Title: 1.Mybatis-XML模板

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/609021/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 自定义spring boot starter 初尝试

    从几篇博客中了解了如何自定义starter,大概分为以下几个步骤: 1 引入相关依赖; 2 生成属性配置类; 3 生成核心服务类; 4 生成自动化配置类; 5 注册配置/META-…

    Java 2023年6月13日
    061
  • jvm:内存结构与对象内存解析

    java的跨平台性主要是因为其字节码文件可以在任何具有java虚拟机的计算机或者电子设备上运行,jvm中的字节码解析器负责将字节码文件解释成机器码运行,字节码文件.class是ja…

    Java 2023年6月7日
    079
  • 策略模式、策略模式与Spring的碰撞

    策略模式是GoF23种设计模式中比较简单的了,也是常用的设计模式之一,今天我们就来看看策略模式。 实际案例 我工作第三年的时候,重构旅游路线的机票查询模块,旅游路线分为四种情况: …

    Java 2023年6月5日
    078
  • 采用SmartQQ 协议可制作聊天机器人

    采用.NET CORE可运行在 Linux 、 Windows 和 Mac OSX 平台下。 SmartQQ可以: 收发文字消息 获取好友、群、讨论组、好友分组和最近会话的列表 S…

    Java 2023年6月7日
    065
  • MySQL到底有没有解决幻读问题?这篇文章彻底给你解答

    MySQL InnoDB引擎在Repeatable Read(可重复读)隔离级别下,到底有没有解决幻读的问题? 网上众说纷纭,有的说解决了,有的说没解决,甚至有些大v的意见都无法达…

    Java 2023年6月8日
    0144
  • java 中为什么重写 equals 后需要重写 hashCode

    本文为博主原创,未经允许不得转载: 1. equals 和 hashCode 方法之间的关系 这两个方法都是 Object 的方法,意味着 若一个对象在没有重写 这两个方法时,都会…

    Java 2023年5月29日
    076
  • 格式化的输出

    可以使用 System.out.print(s)将数值输出到控制台中; Java SE 5.0沿用了C语言库函数中的printf方法,例如: System.out.printf(“…

    Java 2023年6月9日
    075
  • 内部类

    当目前某个类现在需要一个只能该类使用的类时 1.能修饰类的权限修饰符只能时 默认不写(default) 和公共(public) 2.内部类私有化 正向思考: 四种权限修饰符常用来修…

    Java 2023年6月8日
    068
  • Centos7.5安装OpenJDK1.8

    安装openJDK 1.8yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel 获取java home dirnam…

    Java 2023年5月30日
    087
  • javaSE 温故而知新

    重温 javaSE 前言:有地基才能有高楼大厦 重温 javaSE 认识java Java基础 1、数据类型 1.1 基本数据类型: 1.2 引用数据类型 1.3 基本数据类型的包…

    Java 2023年6月16日
    072
  • Java面试题(九)–Spring MVC

    1、Spring MVC中的拦截器和Servlet中的filter有什么区别? 过滤器:依赖于servlet容器,在实现上基于函数回调,可以对几乎所有请求进行过滤 拦截器:依赖于w…

    Java 2023年6月9日
    091
  • 接口(Java)

    基本介绍 普通类:只有具体实现 抽象类:具体实现和规范(抽象方法)都有 接口:只有规范(抽象方法)自己无法写方法~专业的约束!约束和现实分离:面向接口编程 接口就是规范,定义的是一…

    Java 2023年6月9日
    060
  • Java注释Override、Deprecated、SuppressWarnings详解

    一、什么是注释 说起注释,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据…

    Java 2023年5月29日
    079
  • 图像处理

    绘制图像绘图类 不仅可以绘制几何图形, 还可以绘制图像,绘制图像需要使用 drawImage()方法 ,该方法用来将图像资源显示到绘图上下文中。drawImage()方法 语法: …

    Java 2023年6月9日
    054
  • 【并发】ExecutorCompletionService使用

    介绍 ExecutorCompletionService是线程池和队列的配合使用,可以将线程池执行完成的结果存入队列当中,通过take或者poll方法获取执行完成的结果 遇到的场景…

    Java 2023年6月8日
    069
  • oracle创建表空间

    –plsql developer建立数据库 –登录plsql developer,使用用户账号登录: –0.数据库统一管理账号:orcl &#8…

    Java 2023年6月5日
    058
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球