Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SpringJPA连接两个实体_Spring_Jpa_Entity - Fatal编程技术网

SpringJPA连接两个实体

SpringJPA连接两个实体,spring,jpa,entity,Spring,Jpa,Entity,我正在努力使用jpa Crudepository接口连接两个实体模型。我不知道如何映射两个实体模型并在@query注释中编写查询。这些是我的实体类。 我想执行此查询“从出租车司机映射中选择dppd.payment\u plan\u id、dppd.attribute\u值、dppd.attribute\u id作为tdm加入司机\u payment\u plan\u详细信息作为dppd.payment\u plan上的dppd” } }谢谢你们给我展示了正确的路径,这是我的代码 @Getter

我正在努力使用jpa Crudepository接口连接两个实体模型。我不知道如何映射两个实体模型并在@query注释中编写查询。这些是我的实体类。 我想执行此查询“从出租车司机映射中选择dppd.payment\u plan\u id、dppd.attribute\u值、dppd.attribute\u id作为tdm加入司机\u payment\u plan\u详细信息作为dppd.payment\u plan上的dppd”

}


}谢谢你们给我展示了正确的路径,这是我的代码

@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;

如果实体没有任何关联,则不能加入它们。阅读有关JPA的教程、书籍或Hibernate文档,并了解关联。它们是JPA的一个功能部分,你需要理解。每次您在一个实体中拥有另一个实体的ID时,您都犯了错误。然后,一旦您了解了关联,请阅读JPQL的文档,“JPA”没有XXXRepository。这就是“SpringDataJPA”,它不是JPAAPI。@JBNizet这不是真的:好的,你可以。你应该吗?JPA的全部要点是拥有一个实体图,并能够在该图中导航。只有孤立的实体ID到处都不是JPA是如何使用,使事情比必要更困难,并显示缺乏理解。我同意@ JBNizet,你不应该用这种方式,并请考虑链接它们,以实现这一点。
@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;

}