Interface MPJDeepService<T>

All Superinterfaces:
com.baomidou.mybatisplus.extension.repository.IRepository<T>, com.baomidou.mybatisplus.extension.service.IService<T>

public interface MPJDeepService<T> extends com.baomidou.mybatisplus.extension.service.IService<T>
深度查询

对配置了映射注解的字段进行查询 目前查询深度只支持2级(只解析当前实体类的映射注解,不会对查询结果再次解析注解) 多级查询可能存在循环引用的问题,也可能会导致全量查询

Since:
1.2.0
Author:
yulichang
See Also:
  • EntityMapping
  • FieldMapping
  • Field Summary

    Fields inherited from interface com.baomidou.mybatisplus.extension.repository.IRepository

    DEFAULT_BATCH_SIZE
  • Method Summary

    Modifier and Type
    Method
    Description
    default T
    根据 ID 查询 并关联全部映射
    default <R> T
    针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系
    default <R> T
    根据 ID 查询 并关联指定映射
    default T
    getOneDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper)
    根据 entity 条件,查询一条记录
    default <R> T
    getOneDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, DeepConfig<T> config)
    针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系
    default <R> T
    getOneDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
    根据 entity 条件,查询一条记录
    default List<T>
    查询(根据ID 批量查询)
    default <R> List<T>
    listByIdsDeep(Collection<? extends Serializable> idList, DeepConfig<T> config)
    针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系
    default <R> List<T>
    查询(根据ID 批量查询)
    default List<T>
    查询(根据 columnMap 条件)
    default <R> List<T>
    listByMapDeep(Map<String,Object> columnMap, DeepConfig<T> config)
    针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系
    default <R> List<T>
    查询(根据 columnMap 条件)
    default List<T>
    listDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper)
    根据 entity 条件,查询全部记录
    default <R> List<T>
    listDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, DeepConfig<T> config)
    针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系
    default <R> List<T>
    listDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
    根据 entity 条件,查询全部记录
    default <E extends com.baomidou.mybatisplus.core.metadata.IPage<T>>
    E
    pageDeep(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper)
    根据 entity 条件,查询全部记录(并翻页)
    default <R, E extends com.baomidou.mybatisplus.core.metadata.IPage<T>>
    E
    pageDeep(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, DeepConfig<T> config)
    针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系
    default <R, E extends com.baomidou.mybatisplus.core.metadata.IPage<T>>
    E
    pageDeep(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
    根据 entity 条件,查询全部记录(并翻页)

    Methods inherited from interface com.baomidou.mybatisplus.extension.repository.IRepository

    count, count, exists, getBaseMapper, getById, getEntityClass, getMap, getObj, getOne, getOne, getOneOpt, getOneOpt, getOptById, ktQuery, ktUpdate, lambdaQuery, lambdaQuery, lambdaUpdate, list, list, list, list, listByIds, listByMap, listMaps, listMaps, listMaps, listMaps, listObjs, listObjs, listObjs, listObjs, page, page, pageMaps, pageMaps, query, remove, removeById, removeById, removeById, removeByIds, removeByIds, removeByMap, save, saveBatch, saveOrUpdate, saveOrUpdateBatch, update, update, update, updateBatchById, updateById

    Methods inherited from interface com.baomidou.mybatisplus.extension.service.IService

    removeBatchByIds, saveBatch, saveOrUpdateBatch, updateBatchById
  • Method Details

    • getByIdDeep

      default T getByIdDeep(Serializable id)
      根据 ID 查询 并关联全部映射
      Parameters:
      id - 主键ID
    • getByIdDeep

      default <R> T getByIdDeep(Serializable id, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
      根据 ID 查询 并关联指定映射

      JDK 默认不推荐泛型数组,会引起 Java堆污染(Heap Pollution)

      Parameters:
      id - 主键ID
      config - 映射配置
    • getByIdDeep

      default <R> T getByIdDeep(Serializable id, DeepConfig<T> config)
      针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系

      例: selectByIdDeep(1, Arrays.asList(User::getId, ... ))

      Parameters:
      id - 主键ID
      config - 映射配置
    • listByIdsDeep

      default List<T> listByIdsDeep(Collection<? extends Serializable> idList)
      查询(根据ID 批量查询)
      Parameters:
      idList - 主键ID列表(不能为 null 以及 empty)
    • listByIdsDeep

      default <R> List<T> listByIdsDeep(Collection<? extends Serializable> idList, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
      查询(根据ID 批量查询)

      JDK 默认不推荐泛型数组,会引起 Java堆污染(Heap Pollution)

      Parameters:
      idList - 主键ID列表(不能为 null 以及 empty)
      config - 映射配置
    • listByIdsDeep

      default <R> List<T> listByIdsDeep(Collection<? extends Serializable> idList, DeepConfig<T> config)
      针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系

      例: selectBatchIdsDeep(idList, Arrays.asList(User::getId, ... ))

      Parameters:
      idList - 主键ID列表(不能为 null 以及 empty)
      config - 映射配置
    • listByMapDeep

      default List<T> listByMapDeep(Map<String,Object> columnMap)
      查询(根据 columnMap 条件)
      Parameters:
      columnMap - 表字段 map 对象
    • listByMapDeep

      default <R> List<T> listByMapDeep(Map<String,Object> columnMap, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
      查询(根据 columnMap 条件)

      JDK 默认不推荐泛型数组,会引起 Java堆污染(Heap Pollution)

      Parameters:
      columnMap - 表字段 map 对象
      config - 映射配置
    • listByMapDeep

      default <R> List<T> listByMapDeep(Map<String,Object> columnMap, DeepConfig<T> config)
      针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系

      例: selectByMapDeep(columnMap, Arrays.asList(User::getId, ... ))

      Parameters:
      columnMap - 表字段 map 对象
      config - 映射配置
    • getOneDeep

      default T getOneDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper)
      根据 entity 条件,查询一条记录
      Parameters:
      queryWrapper - 实体对象封装操作类(可以为 null)
    • getOneDeep

      default <R> T getOneDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
      根据 entity 条件,查询一条记录

      JDK 默认不推荐泛型数组,会引起 Java堆污染(Heap Pollution)

      Parameters:
      queryWrapper - 实体对象封装操作类(可以为 null)
      config - 映射配置
    • getOneDeep

      default <R> T getOneDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, DeepConfig<T> config)
      针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系

      例: selectOneDeep(queryWrapper, Arrays.asList(User::getId, ... ))

      Parameters:
      queryWrapper - 实体对象封装操作类(可以为 null)
      config - 映射配置
    • listDeep

      default List<T> listDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper)
      根据 entity 条件,查询全部记录
      Parameters:
      queryWrapper - 实体对象封装操作类(可以为 null)
    • listDeep

      default <R> List<T> listDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
      根据 entity 条件,查询全部记录

      JDK 默认不推荐泛型数组,会引起 Java堆污染(Heap Pollution)

      Parameters:
      queryWrapper - 实体对象封装操作类(可以为 null)
      config - 映射配置
    • listDeep

      default <R> List<T> listDeep(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, DeepConfig<T> config)
      针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系

      例: selectListDeep(queryWrapper, Arrays.asList(User::getId, ... ))

      Parameters:
      queryWrapper - 实体对象封装操作类(可以为 null)
      config - 映射配置
    • pageDeep

      default <E extends com.baomidou.mybatisplus.core.metadata.IPage<T>> E pageDeep(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper)
      根据 entity 条件,查询全部记录(并翻页)
      Parameters:
      page - 分页查询条件(可以为 RowBounds.DEFAULT)
      queryWrapper - 实体对象封装操作类(可以为 null)
    • pageDeep

      default <R, E extends com.baomidou.mybatisplus.core.metadata.IPage<T>> E pageDeep(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<DeepConfig.Builder<T>,DeepConfig.Builder<T>> config)
      根据 entity 条件,查询全部记录(并翻页)

      JDK 默认不推荐泛型数组,会引起 Java堆污染(Heap Pollution)

      Parameters:
      page - 分页查询条件(可以为 RowBounds.DEFAULT)
      queryWrapper - 实体对象封装操作类(可以为 null)
      config - 映射配置
    • pageDeep

      default <R, E extends com.baomidou.mybatisplus.core.metadata.IPage<T>> E pageDeep(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, DeepConfig<T> config)
      针对可变参数堆污染提供的重载 list为null或空,会查询全部映射关系

      例: selectPageDeep(page, queryWrapper, Arrays.asList(User::getId, ... ))

      Parameters:
      page - 分页查询条件(可以为 RowBounds.DEFAULT)
      queryWrapper - 实体对象封装操作类(可以为 null)
      config - 映射配置