注册账号,密码在数据库中显示加密。
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中进行断点,执行完再次查看则加密完成。
下一篇:
如何给 Kafka 新增分区