2016-09-23 15 views
0

私はで表される2つのテーブルを持っています:ProcessTypeとTypology。これらの2つのテーブル間の多くのrealtionに多くを表す第3のテーブルがあるDBにHibernate HQL:多対多

、テーブルは、Beanを有するdoesen't及び表2のカラム有する

process_type_typology呼ばれる:

  @ManyToMany(fetch = FetchType.LAZY) 
      @JoinTable(name = "process_types_typology" , 
      joinColumns = {@JoinColumn(name = "process_type")} , 
      inverseJoinColumns = {@JoinColumn(name = "typology")}) 
      private Set<Typology> typologies = new HashSet<Typology>(0);    
:私は関係を表し、次の属性を持つPROCESSTYPEで

を類型とprocess_type

  @ManyToMany(fetch = FetchType.LAZY) 
      @JoinTable(name = "process_types_typology" , 
      joinColumns = {@JoinColumn(name = "typology")} , 
      inverseJoinColumns = {@JoinColumn(name = "process_type")}) 
      private Set<ProcessType> processTypes = new HashSet<ProcessType>(0); 

がどのように私はこれらの2つのテーブル間の結合を行うことができます:類型の

そして? 3番目のテーブルはマップされていないので、私は考えていません。 SQLで

クエリはこれです:ちょうどProcessTypeTypologyに参加

from processType inner join process_types_typology ptt on pt.id_process_type=ptt_.process_type 

答えて

0

、Hibernateは生成されたSQLに関係テーブルを言及する世話をします。

from ProcessType pt join pt.typologies t 

また、関連するので一方向がinverseであることを宣言してください。

関連する問題