当我们需要判断一个值是否为null时,我们一般使用if语句进行判断,而在MybatisPlus中有更好的方法。 UserQuery类 packagecom.example.domain;importlombok.Data;@DatapublicclassUserQueryextendsUser{privateIntegerage2;} 一般情况使用if: @TestvoidtextGetAll(){UserQueryuq=newUserQuery();uq.setAge(18);uq.setAge...
if (StringUtils.isNotBlank(tableLogic.value())) { this.logicNotDeleteValue = tableLogic.value(); } else { this.logicNotDeleteValue = dbConfig.getLogicNotDeleteValue(); } if (StringUtils.isNotBlank(tableLogic.delval())) { this.logicDeleteValue = tableLogic.delval(); } else { // 如果注解...
= ''">,#{type}</if>)</insert> 5)动态更新 sql 假如当只有 novel_author 参数有值,<set> 标签会将 <if> 标签内的 逗号 隐藏,不会使 sql 语句报错。set元素会动态前置 SET 关键字,同时也会删掉无关的逗号 代码语言:javascript 复制 <update id="updateNovelByName"parameterType="com.study.spring.ent...
我们会发现执行的并不是删除语句,而是修改语句,表示逻辑删除 此时在数据库中查询: 如下所示数据表中is_deleted字段的值被设置为1,表示逻辑删除。 我们可通过全局配置设置逻辑删除和未删除的状态,如下所示: mybatis-plus:global-config:#设置逻辑已删除的状态为1logic-delete-value: 1#设置逻辑未删除的状态为0logic...
第一种方式:使用进行包裹,像在xml中写sql语句一样实现动态SQL 1、使用<if></if>标签,实现关键词模糊查找 @Mapperpublic interfaceCompanyMapperextendsBaseMapper<CompanyEntity>{// 分页查询@Select(""+" select t.*,a.name_cn as company_name"+" from t_company t "+" join t_customer_company a on t...
如果condition为true,才会添加条件到sql语句中 @TestpublicvoidtestCondition(){ String name= "王"; String email= ""; condition(name,email); }publicvoidcondition(String name, String email) { QueryWrapper<User> queryWrapper =newQueryWrapper<>();/*if (!ObjectUtils.isEmpty(name)) { ...
也就是说我们在扣减用户余额时,需要对用户剩余余额做出判断,如果发现剩余余额为0,则应该将status修改为2,这就是说update语句的set部分是动态的。 实现如下: @Override @Transactional public void deductBalance(Long id, Integer money) { // 1.查询用户 User user = getById(id); // 2.校验用户状态 if (...
也就是说我们在扣减用户余额时,需要对用户剩余余额做出判断,如果发现剩余余额为0,则应该将status修改为2,这就是说update语句的set部分是动态的。 实现如下: @Override@Transactionalpublic void deductBalance(Long id, Integer money) {// 1.查询用户User user = getById(id);// 2.校验用户状态if (user == ...
当我们需要判断一个值是否为null时,我们一般使用if语句进行判断,而在MybatisPlus中有更好的方法。 UserQuery类 代码语言:javascript 复制 packagecom.example.domain;importlombok.Data;@DatapublicclassUserQueryextendsUser{privateInteger age2;} 一般情况使用if: ...