Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 如何忽略域上缓存的注释?_Spring_Hibernate_Spring Boot_Jpa - Fatal编程技术网

Spring 如何忽略域上缓存的注释?

Spring 如何忽略域上缓存的注释?,spring,hibernate,spring-boot,jpa,Spring,Hibernate,Spring Boot,Jpa,我有两张桌子,A桌和B桌 @Entity @Table(name = "A") @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) public class A implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedVa

我有两张桌子,A桌和B桌

    @Entity
    @Table(name = "A")
    @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
    public class A implements Serializable {

        private static final long serialVersionUID = 1L;

        @Id
        @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequenceGenerator")
        @SequenceGenerator(name = "sequenceGenerator")
        private Long id;

        @NotNull
        @Size(max = 250)
        @Column(name = "name", length = 250, nullable = false, unique = true)
        private String name;

        @OneToMany(mappedBy = "aitems")
        @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
        private Set<B> bItems = new HashSet<>()

@Entity
@Table(name = "B")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class B implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequenceGenerator")
    @SequenceGenerator(name = "sequenceGenerator")
    private Long id;

    @NotNull
    @Size(max = 250)
    @Column(name = "name", length = 250, nullable = false)
    private String name;

    @ManyToOne
    @JsonIgnoreProperties("bItems")
    private A aItems;

根据您的实现,您可能能够利用@cacheexecute。查看,它们向您展示了如何在向B发送邮件时收回A的缓存


希望这有帮助

我的所有实现都没有使用@cacheable,对于搜索,我只在使用cacheable保存缓存时才逐出结果。
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)