java - Hibernate - 外键而不是实体

标签 java hibernate mapping foreign-keys

目前,Hibernate 允许我直接使用

加载由 * 对一关系定义的对象
entity1.getEntity2()

是否可以获取外键而不是对象?

我看到的当前方法是添加到我的映射中:

@JoinColumn(name="message_key")
@ManyToOne(targetEntity=Message.class,fetch=FetchType.LAZY)
private Message message;  //these lines currently exist

@Column(name="message_key")
private Long message_fk; //the idea is to add those 2 lines

有没有更好的方法来获取外键,还是只有这个?

最佳答案

是的,你可以这样做。您只需要为 hibernate 明确哪个是它应该维护的映射,如下所示:

@Column(name="message_key", updatable=false, insertable=false)
private Long message_fk;

关于java - Hibernate - 外键而不是实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6311776/

相关文章:

java - 比较文本框中的字符串

java - 将 ProtocolBuffer 消息的重复字段提供给自定义列表适配器

java - 缓存在 JAX-RS 中是如何工作的?

java - 打开相机后未调用 onActivityResult

java - 任何持久更改的审计日志,不使用数据库触发器,而是使用 spring/hibernate

java - Caused by : java.net.NoRouteToHostException: Cannot assign requested address (地址不可用)

javascript - 如何使用 Sequelize.js 将数据插入桥接/映射表

java - JPOX JDO 和 Castor JDO 与 Hibernate 持久性的比较

c# - 序列化/反序列化 Protocol Buffer

elasticsearch - 在ElasticSearch 7中应用映射