麻烦hibernate和json

时间:2015-10-20 18:00:27

标签: java json hibernate

所以我有一个用户和一个客户端。用户可以拥有多个客户端。但是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 个答案:

答案 0 :(得分:0)

您必须在@JoinColumn名称中使用相同的列名称。由于您使用fkIdUser作为变量并且它有效,我想这是您的列名。那么你的映射应该是这样的:

@ManyToOne
@JoinColumn(name = "fkIdUser")
private User user;