JavaSpringJPA哈希集只返回一个值
我正在使用Spring的web应用程序和MySQL的示例数据库世界,我有一对多的表国家和表语言国家,当用Java创建实体时,一切都正常工作,但是当尝试检索语言集时,只有一种语言返回,即使我有更多语言,有些事情让我失望,我不知道是什么
Pais类
@Data
@Entity
@Table(name = "country")
public class Pais implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@Column(name="Code")
private String codigo;
@Column(name="Name")
private String nombre;
@OneToOne
@JoinColumn(name = "Capital")
private Ciudad capital;
@OneToMany(fetch=FetchType.EAGER)
@JoinColumn(name = "Code")
private Set<Idioma> idiomas = new HashSet<>();
}
习语类
@Data
@Entity
@Table(name = "countrylanguage")
public class Idioma implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@Column(name="Code")
private String codigo;
@Column(name="Language")
private String nombre;
@Column(name="Is_official")
private String oficial;
@Column(name="Percentage")
private Float porcentaje;
}
# 1 楼答案
您已经准备好了@OneToMany关系,但是还需要在Idioma类中添加@ManyToOne关系。在这里,还可以使用外键定义列
比如:
我认为使用https://bootify.io可以创建JPA类,可以在那里导入SQL方案