[英]spring jpa join two entities
我正在努力使用jpa crudRepository接口加入两个实体模型。 我不知道如何映射两个实体模型并在@Query批注内编写查询。 这些是我的实体类。 我要执行此查询“在dppd.payment_plan上,从taxi_driver_mapping AS tdm JOIN driver_payment_plan_details AS dppd中选择dppd.payment_plan_id,dppd.attribute_value,dppd.attribute_id”
@Getter
@Setter
@Entity
@ToString
@Table(name = "driver_payment_plan_details")
@NoArgsConstructor
public class DriverPaymentPlanDetails
{
@Id
@Column(name = "id")
private int id ;
@Column(name = "payment_plan_id")
private long paymentPlanId;
@Column(name = "attribute_id")
private int attributeId;
@Column(name = "attribute_value")
private float attributeValue;
}
@Getter
@Setter
@ToString
@Table(name = "taxi_driver_mapping")
@Entity
@NoArgsConstructor
public class TaxiDriverMapping
{
@Column(name = "mapping_id")
@Id
private Long mappingId;
@Column(name = "mapping_driverid")
private Long mappingDriverId;
@Column(name = "mapping_taxi_model_id")
private String mappingTaxiModelId;
@Column(name = "mapping_status")
private String mappingStatus;
@Column(name = "mapping_payment_plan_id")
private Long mappingPaymentPlanId;
}
谢谢你们显示正确的路径,这是我的代码。
@Getter
@Setter
@ToString
@Table(name = "taxi_driver_mapping")
@Entity
@NoArgsConstructor
public class TaxiDriverMapping
{
@Column(name = "mapping_id")
@Id
private Long mappingId;
@Column(name = "mapping_driverid")
private Long mappingDriverId;
@Column(name = "mapping_taxi_model_id")
private String mappingTaxiModelId;
@Column(name = "mapping_status")
private String mappingStatus;
@Column(name = "mapping_payment_plan_id")
private Long mappingPaymentPlanId;
@OneToMany(mappedBy = "taxiDriverMapping")
private List<DriverPaymentPlanDetails> driverPaymentPlanDetails;
}
@Getter
@Setter
@Entity
@ToString
@Table(name = "driver_payment_plan_details")
@NoArgsConstructor
public class DriverPaymentPlanDetails
{
@Id
@Column(name = "id")
private int id ;
@Column(name = "payment_plan_id")
private long paymentPlanId;
@Column(name = "attribute_id")
private int attributeId;
@Column(name = "attribute_value")
private float attributeValue;
@ManyToOne()
@JoinColumn(name="payment_plan_id",insertable = false,updatable = false)
private TaxiDriverMapping taxiDriverMapping;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.