2012-07-27 161 views
0

在一对一映射中,我编写了以下几行代码。OnetoOne休眠映射

什么是@Parameter(名称= “属性”,值= “后”)意义。如果我不写那条线,我得到一个错误

调用init方法失败;嵌套异常是org.hibernate.MappingException:无法实例id生成[实体名= in.codejava.personal.model.Content]

EDIT

当我改变的值= “POST”到其他任何东西,如价值=“post123”等工作。但是,当我完全删除它时,它不起作用。部分代码http://pastebin.com/CjEpqtXV

回答

2

它允许告诉生成器必须从哪个属性中提取标识(在本例中为“post”)。一个实体可以有多个OnetoOne关联。你需要告诉它哪一个包含你实体的ID。

请注意,此生成器可以替换为包含ID:的OneToOne关联的标准JPA注释。 Hibernate文档recommends its usage而不是国外生成器。

+0

@ jn-nizet我将value =“post”更改为value =“post1”。它仍然正常执行。怎么样? – 2012-07-27 18:26:29

+0

不知道。这看起来很奇怪。 – 2012-07-27 18:48:45

+0

我再次测试,但post1也工作。反正以下是代码。你能帮我优化它吗? http://pastebin.com/CjEpqtXV。只有几行。提前致谢。 – 2012-07-27 19:16:56