我使用Spring Data JPA和Hibernate尝试实现软删除。我看到的所有示例都很简单,where子句就像布尔检查一样。我需要的是例如软删除所有狗,例如,如果它们的品种在被禁止的品种列表中。我有一个动态列表:
List<String> bannedBreedsComesFromPropertiesFile = Arrays.asList("beagle", "terrier", "dalmation")
然后回购:
public interface DogRepository extends CrudRepository<Dog, Integer> {
findAllBy....
findAllBy...
findAllBy...
....
}
因此品种筛选器应适用于上述所有findAll方法。
然后我想使用DB中的这些犬种来实现软删除/过滤:
@Entity
@Where(clause="breed != Not in list bannedBreedsComesFromPropertiesFile")
public class Dog{
@Column(name="breed")
private String breed;
}
我该如何实现?如果存在,我找不到正确的语法。