QueryWrapper中eq的用法案例

该代码段展示了在Java中检查司机和车辆是否已绑定的逻辑。在尝试绑定前,通过查询`DriverCarBindingRelationship`表,若发现driver_id、car_id与bind_state匹配的记录存在(即已绑定),则返回错误信息,阻止重复绑定。
摘要由CSDN通过智能技术生成

在这里插入图片描述

public ResponseResult bind(DriverCarBindingRelationship driverCarBindingRelationship){


        /*
        * 判断:在绑定司机和车辆关系之前,先判断一下二者之间是否已经绑定,如果已经绑定过,则不容许再绑定
        * */
        QueryWrapper<DriverCarBindingRelationship> queryWrapper = new QueryWrapper<>();     //查询包装器
        //多种条件情况下进行查询,以下三种情况必须满足
        queryWrapper.eq("driver_id",driverCarBindingRelationship.getDriverId());
        queryWrapper.eq("car_id",driverCarBindingRelationship.getCarId());
        queryWrapper.eq("bind_state",DriverCarConstants.DRIVER_CAR_BIND);
        Integer integer = driverCarBindingRelationshipMapper.selectCount(queryWrapper);
        if(integer.intValue()>0){
            return ResponseResult.fail(CommonStatusEnum.DRIVER_CAR_BIND_EXIST.getCode(),CommonStatusEnum.DRIVER_CAR_BIND_EXIST.getValue());
        }
}

底层运行结果:

Creating a new SqlSession
SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@66061384] was not registered for synchronization because synchronization is not active
JDBC Connection [HikariProxyConnection@704441103 wrapping com.mysql.cj.jdbc.ConnectionImpl@4e911e70] will not be managed by Spring
> Preparing: SELECT COUNT( * ) FROM driver_car_binding_relationship WHERE (driver_id = ? AND car_id = ? AND bind_state = ?)
> Parameters: 53(Long), 6(Long), 1(Integer)
<
Columns: COUNT( * )
<
Row: 0
<== Total: 1
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@66061384]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值