Module bus.base

Class AbstractService<T extends BaseEntity,I extends Serializable,M extends SharedMapper<T,I>>

java.lang.Object
org.miaixz.bus.base.service.AbstractService<T,I,M>
All Implemented Interfaces:
org.miaixz.bus.core.basic.service.Service
Direct Known Subclasses:
DefaultService

public class AbstractService<T extends BaseEntity,I extends Serializable,M extends SharedMapper<T,I>> extends Object
基于 spring 实现 BasicService 接口 根据业务需要如无status,creator等相关属性内容 重写此类及BaseEntity 业务类继承新类
Since:
Java 17+
Author:
Kimi Liu
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected M
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.miaixz.bus.mapper.binding.condition.Condition<T>
     
    long
    count(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
    通用:根据条件查询总数
    long
    count(T entity)
    通用:根据实体条件查询总数
    long
    delete(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
    通用:根据条件批量删除
    long
    delete(T entity)
    通用:删除实体
    <F> long
    deleteByFieldList(org.miaixz.bus.mapper.binding.function.Fn<T,F> field, Collection<F> fieldValueList)
    通用:根据指定字段集合删除
    long
    通用:根据主键删除
    long
    通用:根据多个主键集合删除
    insert(T entity)
    通用:插入实体(所有字段)
    通用:批量插入实体(所有字段)
    通用:批量插入实体(非空字段)
    insertOrUpdate(T entity)
    通用:插入或更新实体(所有字段)
    通用:插入或更新实体(非空字段)
    通用:插入实体(非空字段)
    org.miaixz.bus.core.basic.entity.Result<T>
    page(T entity)
    通用:分页查询
    boolean
    pkHasValue(T entity)
    通用:检查实体主键是否有值
    long
    remove(T entity)
    通用:逻辑删除实体
    通用:查询所有记录
    <F> List<T>
    selectByFieldList(org.miaixz.bus.mapper.binding.function.Fn<T,F> field, Collection<F> fieldValueList)
    通用:根据指定字段集合查询
    通用:根据主键查询
    selectList(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
    通用:根据条件查询列表
    selectList(T entity)
    通用:根据实体条件查询列表
    selectOne(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
    通用:根据条件查询单条记录
    selectOne(T entity)
    通用:根据实体条件查询单条记录
    protected String
    setValue(T entity)
    设置实体属性值(状态、操作人、操作时间等)
    update(T entity)
    通用:更新实体(所有字段)
    long
    update(T entity, org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
    通用:根据条件批量更新(所有字段)
    update(T entity, org.miaixz.bus.mapper.binding.function.Fn<T,Object>... fields)
    通用:更新实体(指定字段)
    通用:更新实体(非空字段)
    long
    updateSelective(T entity, org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
    通用:根据条件批量更新(非空字段)
    updateSelective(T entity, org.miaixz.bus.mapper.binding.function.Fn<T,Object>... fields)
    通用:更新实体(非空字段,强制更新指定字段)
    org.miaixz.bus.mapper.binding.condition.ConditionWrapper<T,I>
    通用:获取条件包装器

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • AbstractService

      public AbstractService()
  • Method Details

    • insert

      public Object insert(T entity)
      通用:插入实体(所有字段)
      Parameters:
      entity - 实体类
      Returns:
      保存后的实体
    • insertSelective

      public Object insertSelective(T entity)
      通用:插入实体(非空字段)
      Parameters:
      entity - 实体类
      Returns:
      保存后的实体
    • insertBatch

      public List<T> insertBatch(List<T> list)
      通用:批量插入实体(所有字段)
      Parameters:
      list - 实体列表
      Returns:
      保存后的实体列表
    • insertBatchSelective

      public List<T> insertBatchSelective(List<T> list)
      通用:批量插入实体(非空字段)
      Parameters:
      list - 实体列表
      Returns:
      保存后的实体列表
    • update

      public Object update(T entity)
      通用:更新实体(所有字段)
      Parameters:
      entity - 实体类
      Returns:
      更新后的实体
    • update

      public Object update(T entity, org.miaixz.bus.mapper.binding.function.Fn<T,Object>... fields)
      通用:更新实体(指定字段)
      Parameters:
      entity - 实体类
      fields - 需要更新的字段
      Returns:
      更新后的实体
    • updateSelective

      public Object updateSelective(T entity)
      通用:更新实体(非空字段)
      Parameters:
      entity - 实体类
      Returns:
      更新后的实体
    • updateSelective

      public Object updateSelective(T entity, org.miaixz.bus.mapper.binding.function.Fn<T,Object>... fields)
      通用:更新实体(非空字段,强制更新指定字段)
      Parameters:
      entity - 实体类
      fields - 强制更新的字段
      Returns:
      更新后的实体
    • insertOrUpdate

      public Object insertOrUpdate(T entity)
      通用:插入或更新实体(所有字段)
      Parameters:
      entity - 实体类
      Returns:
      保存或更新后的实体
    • insertOrUpdateSelective

      public Object insertOrUpdateSelective(T entity)
      通用:插入或更新实体(非空字段)
      Parameters:
      entity - 实体类
      Returns:
      保存或更新后的实体
    • remove

      public long remove(T entity)
      通用:逻辑删除实体
      Parameters:
      entity - 要删除的实体
      Returns:
      受影响的行数
    • delete

      public long delete(T entity)
      通用:删除实体
      Parameters:
      entity - 实体类
      Returns:
      删除的记录数,大于0表示成功
    • deleteById

      public long deleteById(I id)
      通用:根据主键删除
      Parameters:
      id - 主键
      Returns:
      删除的记录数,1表示成功
    • deleteByIds

      public long deleteByIds(Collection<I> ids)
      通用:根据多个主键集合删除
      Parameters:
      ids - 主键集合
      Returns:
      删除的记录数
    • deleteByFieldList

      public <F> long deleteByFieldList(org.miaixz.bus.mapper.binding.function.Fn<T,F> field, Collection<F> fieldValueList)
      通用:根据指定字段集合删除
      Type Parameters:
      F - 字段值类型
      Parameters:
      field - 字段
      fieldValueList - 字段值集合
      Returns:
      删除的记录数
    • selectById

      public Object selectById(I id)
      通用:根据主键查询
      Parameters:
      id - 主键
      Returns:
      实体,未找到返回null
    • selectOne

      public Object selectOne(T entity)
      通用:根据实体条件查询单条记录
      Parameters:
      entity - 实体类
      Returns:
      实体,未找到返回null
    • selectList

      public List<T> selectList(T entity)
      通用:根据实体条件查询列表
      Parameters:
      entity - 实体类
      Returns:
      实体列表
    • selectByFieldList

      public <F> List<T> selectByFieldList(org.miaixz.bus.mapper.binding.function.Fn<T,F> field, Collection<F> fieldValueList)
      通用:根据指定字段集合查询
      Type Parameters:
      F - 字段值类型
      Parameters:
      field - 字段
      fieldValueList - 字段值集合
      Returns:
      实体列表
    • selectAll

      public List<T> selectAll()
      通用:查询所有记录
      Returns:
      实体列表
    • count

      public long count(T entity)
      通用:根据实体条件查询总数
      Parameters:
      entity - 实体类
      Returns:
      记录总数
    • condition

      public org.miaixz.bus.mapper.binding.condition.Condition<T> condition()
    • delete

      public long delete(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
      通用:根据条件批量删除
      Parameters:
      condition - 查询条件
      Returns:
      删除的记录数,大于0表示成功
    • update

      public long update(T entity, org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
      通用:根据条件批量更新(所有字段)
      Parameters:
      entity - 实体类
      condition - 查询条件
      Returns:
      更新的记录数,大于0表示成功
    • updateSelective

      public long updateSelective(T entity, org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
      通用:根据条件批量更新(非空字段)
      Parameters:
      entity - 实体类
      condition - 查询条件
      Returns:
      更新的记录数,大于0 STRUCTURE表示成功
    • selectOne

      public Object selectOne(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
      通用:根据条件查询单条记录
      Parameters:
      condition - 查询条件
      Returns:
      实体,未找到返回null
    • selectList

      public List<T> selectList(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
      通用:根据条件查询列表
      Parameters:
      condition - 查询条件
      Returns:
      实体列表
    • count

      public long count(org.miaixz.bus.mapper.binding.condition.Condition<T> condition)
      通用:根据条件查询总数
      Parameters:
      condition - 查询条件
      Returns:
      记录总数
    • pkHasValue

      public boolean pkHasValue(T entity)
      通用:检查实体主键是否有值
      Parameters:
      entity - 实体类
      Returns:
      true表示有值,false表示为空
    • page

      public org.miaixz.bus.core.basic.entity.Result<T> page(T entity)
      通用:分页查询
      Parameters:
      entity - 实体类(包含分页和排序参数)
      Returns:
      分页结果,包含记录列表和总数
    • wrapper

      public org.miaixz.bus.mapper.binding.condition.ConditionWrapper<T,I> wrapper()
      通用:获取条件包装器
      Returns:
      条件包装器
    • setValue

      protected String setValue(T entity)
      设置实体属性值(状态、操作人、操作时间等)
      Parameters:
      entity - 实体类
      Returns:
      实体ID