在添加角色后,使用新添加的角色id给该角色添加权限
在写用户组设置模块时,角色和权限的添加是三表关联
分别是角色表、权限表、角色权限关联表
新增角色时不但需要新增角色表,还需要新增角色权限关联表,给角色赋予权限
在写新增角色的mybatis文件时需要增加 useGeneratedKeys=“true”,keyProperty=“id”
设置是否使用useGeneratedKeys="true"方法获取主键并赋值到keyProperty设置的领域模型属性中。
直接在注册完成后通过对象获取id
代码如下:
<!--新增角色-->
<insert id="insertRole" parameterType="com.cn.entity.user.RolePerm" keyProperty="id" useGeneratedKeys="true"
keyColumn="id">
insert into role_perm
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="name!=null">
name
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="name!=null">
#{name,jdbcType=VARCHAR}
</if>
</trim>
</insert>
获取id的业务层方法如下:
// 新增角色
rolePermMapper.insertRole(rolePerm);
LOGGER.info("新增角色成功");
// 给角色新增权限
rolePermissionPermMapper.insertPermissionByRoleId(rolePerm.getId(),permDTO.getIntegerList());
LOGGER.info("新增角色权限成功!");
至此获取新增对象的id完成