默认生成使用jpa 自动生成一对多,查询出的是本默认id字段对应外键
//移动@Id 定义一对多外键
@OneToMany
@JoinColumn(name = "p_pinpai_id")
// @JoinColumns({
// @JoinColumn(name = "p_pinpai_id", referencedColumnName ="p_pinpai_id" ),
// })
public List<ImsConfigChangshangEntity> getZhujian() {
return zhujian;
}
public void setZhujian(List<ImsConfigChangshangEntity> zhujian) {
this.zhujian = zhujian;
}
打印出来的结果
所以我们要更改本实体
主键
我们来看看输出结果
JoinColumn问题,这篇文章写的很不错:
https://www.cnblogs.com/lxmyhappy/p/6943344.html
这个方法很简单有效,但是我一直没有看到这个方法,Oracle 官方文档也没有写出来
下面我贴出这个实体全部代码
package com.example.cars.entity;
import javax.persistence.*;
import java.util.List;
@Entity
@Table(name = "ims_config_brand_en", schema = "wx_zhekouchecang", catalog = "")
public class ImsConfigBrandEnEntity {
private int id;
private String pShouzimu;
private String pPinpai;
private Integer pPinpaiId;
private String pPinpaiLogo;
private String pGengxinshijian;
private List<ImsConfigChangshangEntity> zhujian;
@Basic
// @Id
@Column(name = "id")
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Basic
@Column(name = "p_shouzimu")
public String getpShouzimu() {
return pShouzimu;
}
public void setpShouzimu(String pShouzimu) {
this.pShouzimu = pShouzimu;
}
@Basic
@Column(name = "p_pinpai")
public String getpPinpai() {
return pPinpai;
}
public void setpPinpai(String pPinpai) {
this.pPinpai = pPinpai;
}
@Id //移动@Id 定义一对多外键
// @Basic
@Column(name = "p_pinpai_id")
public Integer getpPinpaiId() {
return pPinpaiId;
}
public void setpPinpaiId(Integer pPinpaiId) {
this.pPinpaiId = pPinpaiId;
}
@Basic
@Column(name = "p_pinpai_logo")
public String getpPinpaiLogo() {
return pPinpaiLogo;
}
public void setpPinpaiLogo(String pPinpaiLogo) {
this.pPinpaiLogo = pPinpaiLogo;
}
@Basic
@Column(name = "p_gengxinshijian")
public String getpGengxinshijian() {
return pGengxinshijian;
}
public void setpGengxinshijian(String pGengxinshijian) {
this.pGengxinshijian = pGengxinshijian;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
ImsConfigBrandEnEntity that = (ImsConfigBrandEnEntity) o;
if (id != that.id) return false;
if (pShouzimu != null ? !pShouzimu.equals(that.pShouzimu) : that.pShouzimu != null) return false;
if (pPinpai != null ? !pPinpai.equals(that.pPinpai) : that.pPinpai != null) return false;
if (pPinpaiId != null ? !pPinpaiId.equals(that.pPinpaiId) : that.pPinpaiId != null) return false;
if (pPinpaiLogo != null ? !pPinpaiLogo.equals(that.pPinpaiLogo) : that.pPinpaiLogo != null) return false;
if (pGengxinshijian != null ? !pGengxinshijian.equals(that.pGengxinshijian) : that.pGengxinshijian != null)
return false;
return true;
}
@Override
public int hashCode() {
int result = id;
result = 31 * result + (pShouzimu != null ? pShouzimu.hashCode() : 0);
result = 31 * result + (pPinpai != null ? pPinpai.hashCode() : 0);
result = 31 * result + (pPinpaiId != null ? pPinpaiId.hashCode() : 0);
result = 31 * result + (pPinpaiLogo != null ? pPinpaiLogo.hashCode() : 0);
result = 31 * result + (pGengxinshijian != null ? pGengxinshijian.hashCode() : 0);
return result;
}
@OneToMany
@JoinColumn(name = "p_pinpai_id")
// @JoinColumns({
// @JoinColumn(name = "p_pinpai_id", referencedColumnName ="p_pinpai_id" ),
// })
public List<ImsConfigChangshangEntity> getZhujian() {
return zhujian;
}
public void setZhujian(List<ImsConfigChangshangEntity> zhujian) {
this.zhujian = zhujian;
}
}
idea 有一个实体类生成,jap,十分还用还可以添加关联关系希望给的人帮助
一键生成一对多,一对一,给我了很大的帮助和快速开发
名字叫:Persistence