好好编程-物流项目11【用户管理-修改和删除】

好好编程-物流项目11【用户管理-修改和删除】,第1张

class=“dfinput” />

  • class=“dfinput” />

  • type=“password” class=“dfinput” />

  • class=“dfinput” />

  • class=“dfinput” />

  • f l a g e q t r u e ? ′ c h e c k e d ′ : ′ ′ v a l u e = " {flag eq true?'checked':'' } value=" flageqtrue?checked:value="{role.roleId }" name=“roles”>

    ${role.roleName }  

  • class=“btn” value=“确认保存” />

    [](()1.4提交修改数据

    控制层不用修改,修改service层的实现类,如下:

    @Override

    public void saveOrUpdate(UserDto userDto) throws Exception {

    // 获取User对象

    User user = userDto.getUser();

    // 获取关联的角色信息

    List roles = userDto.getRoles();

    // 判断是添加还是修改数据

    if(user.getUserId()!=null && user.getUserId() > 0){

    // 表示userId存在,说明是更新

    // 修改用户

    userMapper.updateByPrimaryKeySelective(user);

    // 根据用户ID删除管理的角色信息

    userMapper.deleteRoleIdByUserId(user.getUserId());

    // 再保存用户和角色的关联关系

    if(roles!=null && roles.size() > 0){

    for (Integer roleId : roles) {

    userMapper.inserUserIdAndRoleId(user.getUserId(),roleId);

    }

    }

    }else{

    // 不存在id说明是添加数据

    // 先添加用户数据 获取生成的userId

    userMapper.insert(user);

    // 再保存用户和角色的对应关系,在一个事务中处理

    if(roles!=null && roles.size() > 0){

    for (Integer roleId : roles) {

    userMapper.inserUserIdAndRoleId(user.getUserId(),roleId);

    }

    }

    }

    }

    UserMapper接口

    void deleteRoleIdByUserId(Integer userId);

    sql语句

    delete from t_user_role where user_id=#{id}

    测试修改

    修改成功!

    [](()2.删除用户


    本来用户是不用真的删除的,实际中我们会给用户表添加一个是否删除的字段,删除数据只需要修改该字段即可,也就是我们常说的伪删除,在此处我们来介绍下真实删除(有关联关系的情况下)

    [](()2.1提交删除请求

    [](()2.2处理删除请求

    控制器

    @RequestMapping(“/delete”)

    public String deleteUser(Integer id) throws Exception{

    userService.deleteU 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 ser(id);

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/726133.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存