Tag: 软删除

在hibernate的常见位置进行逻辑删除

我在我的应用程序中使用Spring和Hibernate。 我只允许在我的应用程序中进行逻辑删除,我需要设置字段isActive = false。 我没有在所有实体中重复相同的字段,而是使用属性和’isActive’的getter-setter创建了一个Base Class。 因此,在删除期间,我调用update()方法并将isActive设置为false。 我无法让这个工作。 如果有任何想法,请告诉我。 基本实体 public abstract class BaseEntity implements IEntity { @Basic @Column(name = “IsActive”) protected boolean isActive; public Boolean getIsActive() { return isActive; } public void setIsActive(Boolean isActive) { isActive= isActive; } } 儿童实体 @Entity(name=”Role”) @Table(schema = “dbo”) public class MyEntity extends BaseEntity { //remaining entities } Hibernate […]

Hibernate:使用inheritace覆盖sql-delete

我有一个实体A和B extends A并尝试使用连接inheritance策略进行软删除。 @Entity @Inheritance(strategy = InheritanceType.JOINED) @SQLDelete(“UPDATE A SET deleted = 1 WHERE id = ?”) A { @Id long id; boolean deleted; } @Entity B extends A {} 似乎Hibernate正确地将表A为deleted = 1 ,但也删除了表B的整个条目。 当然,我想保留这个条目。 有什么想法吗? 我正在使用Hibernate 3.5.5和基于注释的实体定义。 尝试过Hibernate 3.6.2。