注册账号,密码在数据库中显示加密。

1.创建SQL语句

1.在Excel表格中创建相关的SQL语句

=insert into 表名 values (' "&&" ' ,' "&&" ',' "&&" ');
="insert into sys_user_role values('"&B58&"','"&C59A58&"','"&B58&"');"

2.在数据库中执行Sql语句,此时加入的密码是明文的。

2.密码加密

1.Controller

@GetMapping("/testDemo")
public Result updateUserPasswordByDecode(){
     //添加所有需要更改密码的用户
     List<String> ulist = new ArrayList<>();
     //添加用户的邮箱
     ulist.add("jjx@163.com");
     ulist.add("admin@163.com");

     for (String email : ulist){
        //根据邮箱查询该用户
        SysUser user = sysUserService.selectByEmail(email);
        if (null != user){
            if(StringUtils.isNotEmpty(user.getPassword())){
                //加密
                user.setPassword( new BCryptPasswordEncoder().encode(user.getPassword()));
                }else {
                    user.setPassword( new BCryptPasswordEncoder().encode("FDDS92r2"));
                }
            }
            sysUserService.update(user);
        }
        return decide(1);
    }

2.service

//查询用户邮箱
SysUser selectByEmail(String email);
@Override
    public SysUser selectByEmail(String email) {
        return sysUserMapper.selectByEmail(email);
    }
//根据Id修改用户
boolean update(SysUser sysUser);
  @Override
public boolean update(SysUser sysUser) {
    Integer result = sysUserMapper.updateById(sysUser);
        return result > 0;
    }

3.sql

<!-- 结果集 -->
    <resultMap id="SysUserMap" type="SysUser">
        <id property="userId" column="user_id"></id>
        <result property="username" column="username"></result>
        <result property="password" column="password"></result>
        <result property="realName" column="real_name"></result>
        <result property="email" column="email"></result>
    </resultMap>
//查询用户邮箱
SysUser selectByEmail(@Param("email") String email);
<select id="selectByEmail" parameterType="string" resultMap="SysUserMap">
   select * from sys_user where email = #{email}
</select>
//根据Id修改用户
Integer updateById(SysUser sysUser);
 <update id="updateById" parameterType="SysUser">
         update sys_user
         <set>
             <if test="username">
                 username = #{username},
             </if>
             <if test="realName">
                 real_name = #{realName},
             </if>
             <if test="enable!=null and enable!=''">
                 enable = #{enable},
             </if> 
             <if test="password!=null and password!=''">
                 password = #{password},
             </if>
         </set>
         where user_id = #{userId}
    </update>

3.根据路径在页面中进行访问

http://localhost:8090/system/user/testDeme

如果数据库中显示的密码还是明文则在Idea中进行断点,执行完再次查看则加密完成。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值