[英]Hibernate @ManyToOne
It`s possible to create one map with hibernate @ManyToOne just like this: 可以使用休眠@ManyToOne创建一个地图,如下所示:
public class IndicadorAtos {
@JsonIgnore
@Id
@Column(name="cod_ato_praticado")
private Integer codAtoPraticado;
@Column(name="descricao_ato")
private String ato;
@JoinColumn(name = "cod_ato", referencedColumnName = "cod_ato")
@ManyToOne
@Fetch(FetchMode.SUBSELECT)
private Atos atos;
}
But in some cases I dont have association or in my table IndicadorAtos have one code, that don`t existis in table Atos 但是在某些情况下,我没有关联,或者在我的表中IndicadorAtos只有一个代码,在表Atos中不存在
this is my tables: 这是我的桌子:
create table IndicadorAtos (
codAtoPraticado integer primary key,
ato varchar(250),
cod_ato integer
);
create table Atos(
cod_ato integer primary key.
name varchar(250)
)
I try to create this join: 我尝试创建此联接:
Select t FROM IndicadorAtos t , Atos a where t.cod_ato = a.cod_ato, but I need to return all records from my IndicadorAtos, and with this select he only return all itens that have one item in Atos. 选择t FROM IndicadorAtos t,Atos a,其中t.cod_ato = a.cod_ato,但是我需要从我的IndicadorAtos返回所有记录,并且使用此选择,他仅返回在Atos中具有一项的所有itens。
tks ks
It`s possible to create one map with hibernate @ManyToOne 可以使用休眠@ManyToOne创建一张地图
Yes; 是; it is called unidirectional relationship. 这称为单向关系。
If I understood your question properly, you want to select all entries from IndicadorAtos
with possibly associated entries from Atos
. 如果我正确理解了您的问题,那么您希望选择IndicadorAtos
所有条目以及可能来自Atos
相关条目。 You can achieve this by using left join as follows: 您可以按如下所示使用左连接来实现此目的:
SELECT t FROM IndicadorAtos t LEFT JOIN t.atos at
provided that you have an entity Atos
defined like: 前提是您有一个实体Atos
定义如下:
@Entity
public class Atos {
@Id @GeneratedValue
private int cod_ato;
private String name;
// getters and setters
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.