我正在使用JPA 2.0,并希望使用XML而不是注释创建唯一约束。
带注释的类看起来像这样:
@Entity
public class Person {
@Id
@GeneratedValue
private Long id;
@Column(unique=true)
private String name;
// ..
}
这样的orm.xml
文件 - 但它缺少唯一约束:
<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm orm_2_0.xsd"
version="2.0">
<entity class="kiosk.model.Person">
<attributes>
<id name="id">
<generated-value strategy="AUTO" />
</id>
<basic name="name" />
<!-- .. -->
</attributes>
</entity>
</entity-mappings>
如何使用XML向JPA 2.0类添加唯一约束?
答案 0 :(得分:10)
<basic name="name">
<column unique="true"/>
</basic>
请参阅http://en.wikibooks.org/wiki/Java_Persistence/Basic_Attributes