对于我的某个实体,我需要类似部分约束。JPA:部分约束
@Entity
public class MyEntity
{
@NotNull
private String name;
@ManyToOne @NotNull
private Type type;
}
只有一个的单层type
我需要的name
是唯一的。
这可能与@UniqueConstraint
或我需要实现这与@PrePersist
和听众?到目前为止,我还没有实现这样一个监听器,但即使我在这个监听器中检查了这个监听器,它是否能保证防止重复输入?
更新
假设约束应该只活跃type=special
- 允许
{id=1,type=normal,name=Test},{id=2,type=normal,name=Test}
- 不允许:
{id=3,type=special,name=Test},{id=4,type=special,name=Test}
它是如何回答这个问题的? –
@djna是的,这也是我的理解,我更新了我的示例以展示我需要的内容。 – Thor
@Thor,现在我明白了我有一个想法的问题...未经测试恐怕... – djna