SpringDataJpa 实体类过滤伪删除

当需要过滤实体类的数据时,根据伪删除字段进行过滤,需要使用Hibernate提供的@Where注解

使用方式:

@Entity(name = "Account")
@Where( clause = "active = true" )
public static class Account {

    @Id
    private Long id;

    @ManyToOne
    private Client client;

    @Column(name = "account_type")
    @Enumerated(EnumType.STRING)
    private AccountType type;

    private Double amount;

    private Double rate;

    private boolean active;

    //Getters and setters omitted for brevity

}
View Code

 

官方文献:https://docs.jboss.org/hibernate/orm/5.4/userguide/html_single/Hibernate_User_Guide.html#pc-where

 

注意:@Where部分注解不支持超类(@MappedSuperClass),需要定义在需要使用的具体实体类上

 

posted @ 2019-08-23 23:32  星小梦  阅读(1211)  评论(0编辑  收藏  举报