Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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
Java 如何在SpringHibernate中忽略整个映射/连接模型(类)。_Java_Spring_Hibernate - Fatal编程技术网

Java 如何在SpringHibernate中忽略整个映射/连接模型(类)。

Java 如何在SpringHibernate中忽略整个映射/连接模型(类)。,java,spring,hibernate,Java,Spring,Hibernate,我有三张桌子tbl_供应商和tbl_类别表格使用@ManyToMany关系进行映射。当我在特定“类别”下获取“供应商”时,我也会获取“区域”,因为tbl_供应商和tbl_区域也使用@manytomy进行映射 关系: 在tbl_供应商模型中: @ManyToMany(cascade = CascadeType.DETACH, fetch = FetchType.LAZY) @JoinTable(name = "tbl_category_vendor", joinColumns =

我有三张桌子tbl_供应商tbl_类别表格使用@ManyToMany关系进行映射。当我在特定“类别”下获取“供应商”时,我也会获取“区域”,因为tbl_供应商tbl_区域也使用@manytomy进行映射

关系:

在tbl_供应商模型中:

    @ManyToMany(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    @JoinTable(name = "tbl_category_vendor", joinColumns = {@JoinColumn(name = "vendor_id")}, inverseJoinColumns = {@JoinColumn(name = "category_id")})
    private Set<Category> categories = new HashSet<>();
....
    @ManyToMany(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    @JoinTable(name = "tbl_area_vendor", joinColumns = {@JoinColumn(name = "vendor_id")}, inverseJoinColumns = {@JoinColumn(name = "area_id")})
    private Set<Area> areas = new HashSet<>();
@ManyToMany(cascade=CascadeType.DETACH,fetch=FetchType.LAZY)
@JoinTable(name=“tbl_category_vendor”,joinColumns={@JoinColumn(name=“vendor_id”)},inverseJoinColumns={@JoinColumn(name=“category_id”)})
私有集类别=新HashSet();
....
@ManyToMany(cascade=CascadeType.DETACH,fetch=FetchType.LAZY)
@JoinTable(name=“tbl_area_vendor”,joinColumns={@JoinColumn(name=“vendor_id”)},inverseJoinColumns={@JoinColumn(name=“area_id”)})
私有集区域=新HashSet();
在tbl_类别模型中:

    @JsonIgnore
    @ManyToMany(cascade = CascadeType.DETACH, mappedBy = "categories", fetch = FetchType.LAZY)
    private List<Vendor> vendors = new ArrayList<>();
@JsonIgnore
@ManyToMany(cascade=CascadeType.DETACH,mappedBy=“categories”,fetch=FetchType.LAZY)
私有列表供应商=新的ArrayList();
在tbl_区域模型中:

    @JsonIgnore
    @ManyToMany(mappedBy = "areas", fetch = FetchType.LAZY)
    private List<Vendor> vendors = new ArrayList<>();
@JsonIgnore
@ManyToMany(mappedBy=“areas”,fetch=FetchType.LAZY)
私有列表供应商=新的ArrayList();
我有一个特殊案例,我不需要这个带有“供应商”的“区域”。
在某些特定情况下,是否可以使用JpaRepository忽略“供应商”已映射的“区域”

FetchType.LAZY
就足够了。如果不调用getter,集合将不会初始化(从DB请求)。谢谢您的建议。但我昨天在学校发现了一个很酷的图书馆。我只需要在要删除的耗时字段模型上使用“排除”@JsonIgnore也有同样的技巧,但为此我需要在我现有的作品中使用“include”。我只是不想打乱现有的项目,所以我使用了前一个。