int isDelete = userRoleMapper.delete(new LambdaQueryWrapper<UserRole>().in(UserRole::getUserId, roleUserDTO.getUserId()).in(UserRole::getRoleId, roleUserDTO.getRoleId()));
LambdaQueryWrapper
LambdaQueryWrapper
是 MyBatis Plus 提供的一个功能强大的查询构造器,用于构造 SQL 语句。在这个例子中,它被用来创建一个 DELETE 语句的条件。
指明这个查询构造器是为 UserRole
实体类构建的。.in(UserRole::getUserId, roleUserDTO.getUserId()):
UserId
字段的值应包含在给定的参数中(这里是 roleUserDTO.getUserId()
提供的值)。UserRole::getUserId
是一个方法引用,指向 UserRole
实体中的 getUserId
方法,这告诉 LambdaQueryWrapper
要在哪个字段上应用这个条件。.in(UserRole::getRoleId, roleUserDTO.getRoleId()):
.in
方法类似,这里指定了 RoleId
字段的值应包含在 roleUserDTO.getRoleId()
提供的值中。UserRole::getRoleId
是对 UserRole
实体中的 getRoleId
方法的引用。userRoleMapper.delete(...)
userRoleMapper
是 MyBatis Plus 中的一个 Mapper 接口,用于执行数据库操作。这里的 delete
方法执行删除操作。delete
方法的是一个配置了条件的 LambdaQueryWrapper
实例,定义了哪些记录应被删除。int isDelete:
int
),表示被删除的记录数。这个值存储在变量 isDelete
中,可以用来判断删除操作是否成功,以及具体删除了多少条记录。