Procházet zdrojové kódy

[优化] 补全注释,更新新api方法

miemie před 6 roky
rodič
revize
e83ca4002e

+ 3 - 3
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/mapper/BaseMapper.java

@@ -118,9 +118,9 @@ public interface BaseMapper<T> {
      * 根据 entity 条件,删除记录
      * </p>
      *
-     * @param queryWrapper 实体对象封装操作类(可以为 null)
+     * @param wrapper 实体对象封装操作类(可以为 null)
      */
-    int delete(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);
+    int delete(@Param(Constants.WRAPPER) Wrapper<T> wrapper);
 
     /**
      * <p>
@@ -145,7 +145,7 @@ public interface BaseMapper<T> {
      * 根据 whereEntity 条件,更新记录
      * </p>
      *
-     * @param entity        实体对象 (set 条件值,不能为 null)
+     * @param entity        实体对象 (set 条件值,可以为 null)
      * @param updateWrapper 实体对象封装操作类(可以为 null,里面的 entity 用于生成 where 语句)
      */
     int update(@Param(Constants.ENTITY) T entity, @Param(Constants.WRAPPER) Wrapper<T> updateWrapper);

+ 31 - 7
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/service/IService.java

@@ -15,12 +15,6 @@
  */
 package com.baomidou.mybatisplus.extension.service;
 
-import java.io.Serializable;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-import java.util.function.Function;
-
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -30,9 +24,14 @@ import com.baomidou.mybatisplus.extension.service.additional.query.impl.QueryCha
 import com.baomidou.mybatisplus.extension.service.additional.update.impl.LambdaUpdateChainWrapper;
 import com.baomidou.mybatisplus.extension.service.additional.update.impl.UpdateChainWrapper;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
-
 import org.springframework.transaction.annotation.Transactional;
 
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+
 /**
  * <p>
  * 顶级 Service
@@ -407,20 +406,45 @@ public interface IService<T> {
         return pageMaps(page, Wrappers.emptyWrapper());
     }
 
+    /**
+     * 获取对应 entity 的 BaseMapper
+     *
+     * @return BaseMapper
+     */
     BaseMapper<T> getBaseMapper();
 
+    /**
+     * 链式查询 普通
+     *
+     * @return QueryWrapper 的包装类
+     */
     default QueryChainWrapper<T> query() {
         return new QueryChainWrapper<>(getBaseMapper());
     }
 
+    /**
+     * 链式查询 lambda 式
+     *
+     * @return LambdaQueryWrapper 的包装类
+     */
     default LambdaQueryChainWrapper<T> lambdaQuery() {
         return new LambdaQueryChainWrapper<>(getBaseMapper());
     }
 
+    /**
+     * 链式更改 普通
+     *
+     * @return UpdateWrapper 的包装类
+     */
     default UpdateChainWrapper<T> update() {
         return new UpdateChainWrapper<>(getBaseMapper());
     }
 
+    /**
+     * 链式更改 lambda 式
+     *
+     * @return LambdaUpdateWrapper 的包装类
+     */
     default LambdaUpdateChainWrapper<T> lambdaUpdate() {
         return new LambdaUpdateChainWrapper<>(getBaseMapper());
     }

+ 26 - 0
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/service/additional/query/ChainQuery.java

@@ -16,6 +16,7 @@
 package com.baomidou.mybatisplus.extension.service.additional.query;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.additional.ChainWrapper;
 
 import java.util.List;
@@ -28,22 +29,47 @@ import java.util.List;
  */
 public interface ChainQuery<T> extends ChainWrapper<T> {
 
+    /**
+     * 获取集合
+     *
+     * @return 集合
+     */
     default List<T> list() {
         return getBaseMapper().selectList(getWrapper());
     }
 
+    /**
+     * 获取单个
+     *
+     * @return 单个
+     */
     default T one() {
         return getBaseMapper().selectOne(getWrapper());
     }
 
+    /**
+     * 获取 count
+     *
+     * @return count
+     */
     default Integer count() {
         return getBaseMapper().selectCount(getWrapper());
     }
 
+    /**
+     * 获取分页数据
+     *
+     * @param page 分页条件
+     * @return 分页数据
+     */
     default IPage<T> page(IPage<T> page) {
         return getBaseMapper().selectPage(page, getWrapper());
     }
 
+    /**
+     * use {@link IService#update()} or {@link IService#lambdaUpdate()}
+     */
+    @Deprecated
     default int delete() {
         return getBaseMapper().delete(getWrapper());
     }

+ 24 - 4
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/service/additional/update/ChainUpdate.java

@@ -25,11 +25,31 @@ import com.baomidou.mybatisplus.extension.service.additional.ChainWrapper;
  */
 public interface ChainUpdate<T> extends ChainWrapper<T> {
 
-    default int update(T entity) {
-        return getBaseMapper().update(entity, getWrapper());
+    /**
+     * 更新数据
+     *
+     * @return 是否成功
+     */
+    default boolean update() {
+        return update(null);
     }
 
-    default int update() {
-        return getBaseMapper().update(null, getWrapper());
+    /**
+     * 更新数据
+     *
+     * @param entity 实体类
+     * @return 是否成功
+     */
+    default boolean update(T entity) {
+        return getBaseMapper().update(entity, getWrapper()) > 0;
+    }
+
+    /**
+     * 删除数据
+     *
+     * @return 是否成功
+     */
+    default boolean remove() {
+        return getBaseMapper().delete(getWrapper()) > 0;
     }
 }

+ 1 - 0
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/spring/MybatisSqlSessionFactoryBean.java

@@ -425,6 +425,7 @@ public class MybatisSqlSessionFactoryBean implements FactoryBean<SqlSessionFacto
             }
         }
 
+        // TODO 无配置启动所必须的
         if (this.globalConfig == null) {
             this.globalConfig = GlobalConfigUtils.defaults();
         }