hibernate和json的java问题
所以我有一个用户和一个客户端。用户可以有多个客户端。但是json不能返回用户的值
所以我做了这样的事情:
@Column
private Integer fkIdUser ;
但我对冬眠还不熟悉,我想知道这样做是否正确。或者我需要使用一个带有多对一注释的类,但如何使用json呢
用户类
public class User {
public static User globalUser;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_user")
private Integer id;
@Column(unique = true)
private String email;
然后是客户机类
@Entity
@Table(name ="tbl_clients")
@Access(value = AccessType.FIELD)
public class Client {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_client")
private Integer id;
/* This works
@Column
private Integer fkIdUser ;
*/
// This does not
@ManyToOne
@JoinColumn(name = "fk_id_user")
private User user;
我在ClientController中使用此函数将客户端存储到数据库
@RequestMapping(value = "/addclient",method = RequestMethod.POST)
public void addClient(@RequestBody Client client) {
clientDao.save(client);
}
# 1 楼答案
必须在
@JoinColumn
名称中使用相同的列名称。因为您使用fkIdUser
作为变量,并且它可以工作,所以我想这是您的列名。那么您的映射应该如下所示: