Class P5_DeleteOp

All Implemented Interfaces:
DBHelper, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware
Direct Known Subclasses:
P6_ExecuteOp

public abstract class P5_DeleteOp extends P4_InsertOrUpdateOp
  • Constructor Details

    • P5_DeleteOp

      public P5_DeleteOp()
  • Method Details

    • delete

      public <T> int delete(T t) throws NullKeyValueException
      Description copied from interface: DBHelper
      删除数据库记录,返回数据库实际修改条数。 该操作【会】自动使用软删除进行删除
      Parameters:
      t - 要删除的对象
      Returns:
      实际删除的条数
      Throws:
      NullKeyValueException
    • deleteHard

      public <T> int deleteHard(T t) throws NullKeyValueException
      Description copied from interface: DBHelper
      硬删除数据库记录(无论是否注解了软删除字段),返回数据库实际修改条数。
      Parameters:
      t - 要删除的对象
      Returns:
      实际删除的条数
      Throws:
      NullKeyValueException - 当对象的主键值为null时抛出
    • deleteHard

      public <T> int deleteHard(Collection<T> list) throws NullKeyValueException
      Description copied from interface: DBHelper
      硬删除数据库记录(无论是否注解了软删除字段),返回数据库实际修改条数。 推荐使用单个主键的表使用该方法,当list所有对象都是同一个类时,将会拼凑为一条sql进行删除,效率提升多。
      Parameters:
      list - 要更新的对象列表
      Returns:
      实际删除的条数
      Throws:
      NullKeyValueException - 当任意一个值没有带key时,抛出异常
    • delete

      public <T> int delete(Collection<T> list) throws NullKeyValueException
      Description copied from interface: DBHelper
      删除数据库记录,返回数据库实际修改条数。 推荐使用单个主键的表使用该方法,当list所有对象都是同一个类时,将会拼凑为一条sql进行删除,效率提升多。 该操作【会】自动使用软删除进行删除
      Parameters:
      list - 要更新的对象列表
      Returns:
      实际删除的条数
      Throws:
      NullKeyValueException - 当任意一个值没有带key时,抛出异常
    • deleteHard

      public <T> int deleteHard(Class<T> clazz, String postSql, Object... args)
      Description copied from interface: DBHelper
      自定义条件删除数据(无论是否注解了软删除字段)。
      对于使用了拦截器和deleteValueScript的场景,该方法的实现是先根据条件查出数据,再批量删除,以便拦截器可以记录下实际被删的数据,此时删除性能可能比较差,请权衡使用。
      Parameters:
      clazz - 必须有默认构造方法
      postSql - 必须提供,必须写where,【不允许】留空
      args - postSql的参数
      Returns:
      实际删除的条数
    • delete

      public <T> int delete(Class<T> clazz, String postSql, Object... args)
      Description copied from interface: DBHelper
      自定义条件删除数据,该操作【会】自动使用软删除标记。 对于使用了拦截器和deleteValueScript的场景,该方法的实现是先根据条件查出数据,再批量删除,以便拦截器可以记录下实际被删的数据,此时删除性能可能比较差,请权衡使用。
      Parameters:
      clazz - 必须有默认构造方法
      postSql - 必须提供,必须写where,【不允许】留空
      args - postSql的参数
      Returns:
      实际删除的条数