判断提交的数据是否与已提交的数据重复

若数据库里已经存在上面的数据,设一个事件来阻止重复提交

在XML里写入两条sql语句(因为有关键词与排位两个条件)

 <select id = "selectWord" resultType="java.lang.Integer" parameterType="java.lang.String" >
        select count(*) from t_keyword where keyword = #{keyword};
 </select>
 <select id = "selectRank" resultType="java.lang.Integer" parameterType="java.lang.Integer" >
        select count(*) from t_keyword where recommend_rank = #{recommendRank};
 </select>

Mapper接口:

public interface KeywordMapper extends BaseMapper<Keyword> {
    Integer selectWord(String keyword);
    Integer selectRank(Integer recommendRank);
}

Service服务类:

public interface IKeywordService extends IService<Keyword> {
    Integer selectWord(String keyword);
    Integer selectRank(Integer recommendRank);
}

ServiceImpl服务实现类:

@Service
public class KeywordServiceImpl extends ServiceImpl<KeywordMapper, Keyword> implements IKeywordService {

    @Autowired
    private KeywordMapper keywordMapper;

    @Override
    public Integer selectWord(String keyword) {
        return this.keywordMapper.selectWord(keyword);
    }

    @Override
    public Integer selectRank(Integer recommendRank) {
        return this.keywordMapper.selectRank(recommendRank);
    }
}

Controller里写入判断条件

 if(keyword.getId() == null){
     Integer count = keywordService.selectWord(keyword.getKeyword());
         if(count != 0){
             return ResultJson.failure(ResultCode.DATA_EXIST);
         }
 }
 if(keyword.getId() == null){
     Integer Rank = keywordService.selectRank(keyword.getRecommendRank());
         if(Rank != 0){
             return ResultJson.failure(ResultCode.RANK_EXIST);
         }
 }

首先判断这条数据是否已经添加(判断id是否为空,若为空,说明现在执行的是添加操作。若不为空,执行的是编辑操作,编辑操作不需要上述的方法来限制)

判断为空后,执行代码

 Integer count = keywordService.selectWord(keyword.getKeyword());

传入count参数,若count不为零,说明数据已存在,返回错误信息

下面的Rank排位同理。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值