将EntityManager.getReference()与自然键一起使用

时间:2016-04-29 15:51:46

标签: java jpa

我有两个实体类型Log和LogType定义如下:

public class LogType {

    @Id @NotNull
    private Short id;

    @Size(max = 30) @Column(name = "LOG_TYPE")
    private String type;

    /* More fields, getters and setters */

}
public class Log {

    @Id @NotNull
    private Long id;

    @JoinColumn(name = "LOG_TYPE_ID", referencedColumnName = "LOG_TYPE")
    @ManyToOne(optional = false)
    private LogType type;

    /* More fields, getters and setters */

}

LOG_TYPE.LOG_TYPE字段是一个文本字符串标识符,用作与主键分开的自然键。有没有办法在EntityManager.getReference()中使用这个自然键来阻止数据库调用在保存记录时拉出LogType?如果没有,有没有办法复制getReference的功能,以便在不加载完整类型的情况下将值保存在LOG表中?

0 个答案:

没有答案