java 中判读字段唯一重复,sql 索引

  

通过mysql 的唯一索引异常的捕捉,来进行唯一判断,减少重复的代码

 public PostRequestResult register(AccountRegisterDto dto) {

        //员工code不能重复,其要被登录使用
        try{
            TbUser user = new TbUser();  
            user.add(dto);
            this.userRepository.save(user);
            //点击注册按钮生成code 和发送邮箱信息
            String code = CodeUtil.generateUniqueCode();
            String key = RedisConstant.REDIS_EMAIL_TIME+dto.getEmail();
            redisUtil.set(key,code);
            redisUtil.expire(key,60*10);
            if (user.getId() != null) {
                new Thread(new MailUtil(user.getId(),dto.getEmail(), code)).start();;
                return ResopnseResultFactory.createPostResult(ResponseState.success, "创建成功");
            } else {
                return ResopnseResultFactory.createPostResult(ResponseState.error, "创建失败");
            }
        }catch (DataIntegrityViolationException e){

            return ResponseResultFactory.createPostResult(ResponseState.repeat, "当前邮箱/手机已存在,请重新输入");
        }



    }

猜你喜欢

转载自blog.csdn.net/wang0112233/article/details/110480700