我是 JPA 的新手,需要一些建议。我有两张表,Car 和 Driver 链接为 ManyTyOne。我会获得 Car 实体,其中包含有关几个司机的信息。现在我只能从驱动程序中获取 driver_id,它看起来像这样,但还需要接收驱动程序名称和姓氏。
类车:
@Entity
public class Car {
@JsonIgnoreProperties({"telephone", "mail",})
@ManyToOne
@JoinColumn(name = "driver_id"),
private Driver driver;
...
}
@Entity
class Driver:
@JsonIgnoreProperties({"telephone", "mail",})
public class Driver {
private Long id;
private String firstName;
private String lastName;
private String telephone;
private String mail;
...
}
表车SQL:
CREATE TABLE `car` (
`id` decimal(20) unsigned NOT NULL AUTO_INCREMENT,
`driver_id` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (driver_id) REFERENCES driver(id),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
起初,我认为可以通过以下方式接收司机姓名和姓氏:
@JoinColumns({@JoinColumn(name = "driver_id"),
@JoinColumn(name = "first_name"),
@JoinColumn(name = "last_name")})
但是文档说,@JoinColums 仅适用于复合 fk。请给我一个提示,我该怎么做。