首页 > 解决方案 > 使用 JpaRepository SpringBoot 在两个类之间进行映射

问题描述

好吧,我有一个类 Service 和一个类 Employee

Service.java

import lombok.Data;
import javax.persistence.*;

@Data
@Table(name = "services")
@Entity
public class ServiceResource {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;
    private String date;
    private String longitude;
    private String latitude;
    @ManyToOne
    @JoinColumn(name="employee_id")
    private EmployeeResource employee;


}

Employee.java

import lombok.Data;
import javax.persistence.*;

@Data
@Table(name = "employees")
@Entity
public class EmployeeResource {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;
    private String longitude;
    private String latitude;


}

现在我想构建我的应用程序,服务和员工之间的映射是用 JPA 完成的。这甚至可能吗?怎么做?

标签: javaspring-bootspring-data-jpa

解决方案


将此添加到您的 EmployeeResource 实体:

@OneToMany(mappedBy = "employee", cascade = CascadeType.ALL)
private List<ServiceResource> serviceList;

并在 ServiceResource 中,像这样修改连接列:

@ManyToOne
@JoinColumn(name="employee_id", referencedColumnName = "id")
private EmployeeResource employee;

推荐阅读