类 RootService<E extends RootEntity<E>,R extends RootRepository<E>>

java.lang.Object
cn.hamm.airpower.root.RootService<E,R>
类型参数:
E - 实体
R - 数据源
所有已实现的接口:
ITry

public class RootService<E extends RootEntity<E>,R extends RootRepository<E>> extends Object implements ITry

服务根类

作者:
Hamm.cn
  • 字段概要

    字段
    修饰符和类型
    字段
    说明
    protected R
     
  • 构造器概要

    构造器
    构造器
    说明
     
  • 方法概要

    修饰符和类型
    方法
    说明
    final long
    add(E source)
    🟡添加一条数据
    protected final <Y extends Comparable<? super Y>>
    void
    addPredicateNonNull(@NotNull jakarta.persistence.criteria.Root<E> root, List<jakarta.persistence.criteria.Predicate> predicateList, String fieldName, java.util.function.BiFunction<jakarta.persistence.criteria.Expression<? extends Y>,Y,jakarta.persistence.criteria.Predicate> expression, Y value)
    添加查询条件
    protected @NotNull List<jakarta.persistence.criteria.Predicate>
    addSearchPredicate(@NotNull jakarta.persistence.criteria.Root<E> root, @NotNull jakarta.persistence.criteria.CriteriaBuilder builder, E search)
    🟢添加搜索的查询条件
    protected void
    afterAdd(long id, E source)
    🟢添加后置方法
    protected void
    afterDelete(long id)
    🟢删除后置方法
    protected void
    afterDisable(long id)
    🟢禁用后置方法
    protected void
    afterEnable(long id)
    🟢启用后置方法
    protected E
    afterGet(E result)
    🟢详情查询后置方法
    protected @NotNull List<E>
    afterGetList(@NotNull List<E> list)
    🟢不分页查询后置方法
    protected @NotNull QueryPageResponse<E>
    afterGetPage(@NotNull QueryPageResponse<E> queryPageResponse)
    🟢分页查询后置方法
    protected void
    afterSaved(long id, E source)
    🟢保存后置方法
    protected void
    afterUpdate(long id, E source)
    🟢修改后置方法
    protected E
    beforeAdd(E source)
    🟢添加前置方法
    protected void
    beforeDelete(long id)
    🟢删除前置方法
    protected void
    beforeDisable(long id)
    🟢禁用前置方法
    protected void
    beforeEnable(long id)
    🟢启用前置方法
    protected <T extends QueryRequest<E>>
    T
    beforeGetList(T sourceRequestData)
    🟢不分页查询前置方法
    protected <T extends QueryPageRequest<E>>
    T
    beforeGetPage(T sourceRequestData)
    🟢分页查询前置方法
    protected E
    🟢数据库操作前的最后一次确认
    protected E
    beforeUpdate(E source)
    🟢修改前置方法
    final void
    delete(long id)
    🟡删除指定的数据
    protected final void
    deleteById(long id)
    🔴删除指定的数据
    final void
    disable(long id)
    🟡禁用指定的数据
    protected final void
    disableById(long id)
    🔴禁用指定的数据
    final void
    enable(long id)
    🟡启用指定的数据
    protected final void
    enableById(long id)
    🔴启用指定的数据
    final @NotNull List<E>
    filter(E filter)
    🟡过滤数据
    final E
    get(long id)
    🟡根据ID查询对应的实体
    final @NotNull List<E>
    getList(QueryRequest<E> queryRequest)
    🟡不分页查询数据
    final E
    getMaybeNull(long id)
    🟡根据ID查询对应的实体
    final @NotNull QueryPageResponse<E>
    getPage(QueryPageRequest<E> queryPageRequest)
    🟡分页查询数据
    protected final E
    🔴忽略只读字段
    final void
    update(E source)
    🟡修改一条已经存在的数据
    protected final void
    🔴更新到数据库
    protected final void
    updateToDatabase(E source, boolean withNull)
    🔴更新到数据库
    final void
    updateWithNull(E source)
    🔴修改一条已经存在的数据

    从类继承的方法 java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    从接口继承的方法 cn.hamm.airpower.interfaces.ITry

    execute
  • 字段详细资料

  • 构造器详细资料

    • RootService

      public RootService()
  • 方法详细资料

    • beforeAdd

      @NotNull protected E beforeAdd(@NotNull E source)

      🟢添加前置方法

      参数:
      source - 原始实体
      返回:
      处理后的实体
    • add

      public final long add(@NotNull E source)

      🟡添加一条数据

      参数:
      source - 原始实体
      返回:
      保存后的主键ID
      另请参阅:
    • afterAdd

      protected void afterAdd(long id, @NotNull E source)

      🟢添加后置方法

      参数:
      id - 主键ID
      source - 原始实体
    • beforeUpdate

      @NotNull protected E beforeUpdate(@NotNull E source)

      🟢修改前置方法

      参数:
      source - 原始实体
      返回:
      处理后的实体
    • update

      public final void update(@NotNull E source)

      🟡修改一条已经存在的数据

      参数:
      source - 保存的实体
      另请参阅:
    • updateWithNull

      public final void updateWithNull(@NotNull E source)

      🔴修改一条已经存在的数据

      参数:
      source - 保存的实体
      另请参阅:
    • afterUpdate

      protected void afterUpdate(long id, @NotNull E source)

      🟢修改后置方法

      🔴请不要在重写此方法后再次调用 update(E)updateWithNull(E) 以避免循环调用

      🟢如需再次保存,请调用 updateToDatabase(E)

      参数:
      id - 主键ID
      source - 原始实体
    • afterSaved

      protected void afterSaved(long id, @NotNull E source)

      🟢保存后置方法

      参数:
      id - 主键ID
      source - 保存前的原数据
    • beforeDisable

      protected void beforeDisable(long id)

      🟢禁用前置方法

      参数:
      id - 主键ID
    • disable

      public final void disable(long id)

      🟡禁用指定的数据

      参数:
      id - 主键ID
      另请参阅:
    • afterDisable

      protected void afterDisable(long id)

      🟢禁用后置方法

      参数:
      id - 主键ID
    • beforeEnable

      protected void beforeEnable(long id)

      🟢启用前置方法

      参数:
      id - 主键ID
    • enable

      public final void enable(long id)

      🟡启用指定的数据

      参数:
      id - 主键ID
      另请参阅:
    • afterEnable

      protected void afterEnable(long id)

      🟢启用后置方法

      参数:
      id - 主键ID
    • beforeDelete

      protected void beforeDelete(long id)

      🟢删除前置方法

      参数:
      id - 主键ID
    • delete

      public final void delete(long id)

      🟡删除指定的数据

      参数:
      id - 主键ID
      另请参阅:
    • afterDelete

      protected void afterDelete(long id)

      🟢删除后置方法

      参数:
      id - 主键ID
    • beforeGetList

      @NotNull protected <T extends QueryRequest<E>> T beforeGetList(@NotNull T sourceRequestData)

      🟢不分页查询前置方法

      参数:
      sourceRequestData - 查询条件
      返回:
      处理后的查询条件
      另请参阅:
    • getList

      @NotNull public final @NotNull List<E> getList(QueryRequest<E> queryRequest)

      🟡不分页查询数据

      参数:
      queryRequest - 请求的request
      返回:
      List数据
      另请参阅:
    • filter

      @NotNull public final @NotNull List<E> filter(E filter)

      🟡过滤数据

      参数:
      filter - 全匹配过滤器
      返回:
      List数据
    • afterGetList

      @NotNull protected @NotNull List<E> afterGetList(@NotNull @NotNull List<E> list)

      🟢不分页查询后置方法

      参数:
      list - 查询到的数据
      返回:
      处理后的数据
      另请参阅:
    • beforeGetPage

      @NotNull protected <T extends QueryPageRequest<E>> T beforeGetPage(@NotNull T sourceRequestData)

      🟢分页查询前置方法

      参数:
      sourceRequestData - 原始请求的数据
      返回:
      处理后的请求数据
    • afterGetPage

      @NotNull protected @NotNull QueryPageResponse<E> afterGetPage(@NotNull @NotNull QueryPageResponse<E> queryPageResponse)

      🟢分页查询后置方法

      参数:
      queryPageResponse - 查询到的数据
      返回:
      处理后的数据
    • beforeSaveToDatabase

      @NotNull protected E beforeSaveToDatabase(@NotNull E entity)

      🟢数据库操作前的最后一次确认

      返回:
      当前实体
    • addSearchPredicate

      @NotNull protected @NotNull List<jakarta.persistence.criteria.Predicate> addSearchPredicate(@NotNull @NotNull jakarta.persistence.criteria.Root<E> root, @NotNull @NotNull jakarta.persistence.criteria.CriteriaBuilder builder, @NotNull E search)

      🟢添加搜索的查询条件

      参数:
      root - ROOT
      builder - 参数构造器
      search - 原始查询对象
      返回:
      查询条件列表
    • get

      @NotNull public final E get(long id)

      🟡根据ID查询对应的实体

      参数:
      id - 主键ID
      返回:
      实体
      另请参阅:
    • getMaybeNull

      @Nullable public final E getMaybeNull(long id)

      🟡根据ID查询对应的实体

      参数:
      id - 主键ID
      返回:
      实体
      另请参阅:
    • afterGet

      protected E afterGet(E result)

      🟢详情查询后置方法

      参数:
      result - 查到的数据
      返回:
      处理后的数据
    • getPage

      @NotNull public final @NotNull QueryPageResponse<E> getPage(QueryPageRequest<E> queryPageRequest)

      🟡分页查询数据

      参数:
      queryPageRequest - 请求的request对象
      返回:
      分页查询列表
      另请参阅:
    • disableById

      protected final void disableById(long id)

      🔴禁用指定的数据

      参数:
      id - 主键ID
      另请参阅:
    • enableById

      protected final void enableById(long id)

      🔴启用指定的数据

      参数:
      id - 主键ID
      另请参阅:
    • deleteById

      protected final void deleteById(long id)

      🔴删除指定的数据

      参数:
      id - 主键ID
      另请参阅:
    • ignoreReadOnlyFields

      @Contract("_ -> param1") @NotNull protected final E ignoreReadOnlyFields(@NotNull E entity)

      🔴忽略只读字段

      参数:
      entity - 实体
      返回:
      忽略只读字段之后的实体
    • updateToDatabase

      protected final void updateToDatabase(@NotNull E source)

      🔴更新到数据库

      参数:
      source - 原始实体
      另请参阅:
    • updateToDatabase

      protected final void updateToDatabase(@NotNull E source, boolean withNull)

      🔴更新到数据库

      参数:
      source - 原始实体
      withNull - 是否更新空值
      另请参阅:
    • addPredicateNonNull

      protected final <Y extends Comparable<? super Y>> void addPredicateNonNull(@NotNull @NotNull jakarta.persistence.criteria.Root<E> root, List<jakarta.persistence.criteria.Predicate> predicateList, String fieldName, java.util.function.BiFunction<jakarta.persistence.criteria.Expression<? extends Y>,Y,jakarta.persistence.criteria.Predicate> expression, Y value)

      添加查询条件

      参数:
      root - ROOT
      predicateList - 查询条件列表
      fieldName - 所属的字段名称
      expression - 表达式
      value - 条件的值