• csmall-passport(Day15)


    1. 显示角色列表

    当【添加管理员】时,必须在操作界面上提供一个可以选择【角色】的控件,且添加时必须确定某些角色,从而,新添加的管理员才会因为选择的角色而关联到某些权限,管理员才会具有某些操作权限!

    关于选择【角色】,需要将当前系统中的【角色列表】显示在操作界面上!

    关于Mapper层(数据访问层 / DAO(Data Access Object)层 / 持久层)

    需要执行的SQL语句大致是:

    SELECT id, name, description, sort FROM ams_role ORDER BY sort DESC, id
    
    • 1

    在根包下创建pojo.vo.RoleListItemVO类:

    package cn.tedu.csmall.passport.pojo.vo;
    
    import lombok.Data;
    
    import java.io.Serializable;
    
    @Data
    public class RoleListItemVO implements Serializable {
       
    
        private Long id;
        private String name;
        private String description;
        private Integer sort;
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    在根包下创建mapper.RoleMapper接口,并添加抽象方法:

    package cn.tedu.csmall.passport.mapper;
    
    import cn.tedu.csmall.passport.pojo.vo.RoleListItemVO;
    import org.springframework.stereotype.Repository;
    
    import java.util.List;
    
    @Repository
    public interface RoleMapper {
       
    
        List<RoleListItemVO> list();
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    src/main/resources下的mapper文件夹中粘贴得到RoleMapper.xml,并在此文件中配置以上抽象方法映射的SQL语句:

    
    DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    
    <mapper namespace="cn.tedu.csmall.passport.mapper.RoleMapper">
    
        <select id="list" resultMap="ListResultMap">
            SELECT
                <include refid="ListQueryFields" />
            FROM
                ams_role
            ORDER BY
                sort DESC, id
        select>
    
        <sql id="ListQueryFields">
            <if test="true">
                id, name, description, sort
            if>
        sql>
    
        <resultMap id="ListResultMap" type="cn.tedu.csmall.passport.pojo.vo.RoleListItemVO">
            <id column="id" property="id" />
            <result column="name" property="name" />
            <result column="description" property="description" />
            <result column="sort" property="sort" />
        resultMap>
    
    mapper>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    src/test/java下的根包下创建mapper.RoleMapperTests测试类,对以上方法进行测试:

    package cn.tedu.csmall.passport.mapper;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    
    import java.util.List;
    
    @Slf4j
    @SpringBootTest
    public class RoleMapperTests {
       
    
        @Autowired
        RoleMapper mapper;
    
        @Test
        void testList() {
       
            List<?> list = mapper.list
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
  • 相关阅读:
    CAS部署使用以及登录成功跳转地址
    SpringBoot 整合 Websocket 通信demo (附浏览器聊天窗口)
    Java对URL中字符串进行编码
    jQuery常用API--元素操作
    快收藏!最适合计算机大学生的Java毕业设计项目--音乐视频网站系统!
    解决用Fiddler抓包,网页显示你的连接不是专用/私密连接
    HarmonyOS之自选股App
    你真的了解static吗?
    ImageJ查看图像灰度值矩阵及像素编号从0开始
    LeetCode 图解 | 141.环形链表
  • 原文地址:https://blog.csdn.net/shortcutsuccess/article/details/126879106