Java 数据不会持久化
下面的代码有什么问题Java 数据不会持久化,java,jpa,playframework,playframework-1.x,Java,Jpa,Playframework,Playframework 1.x,下面的代码有什么问题 @PrePersist public void preSave() throws DuplicatePinException { Logger.info("PRESAVE"); for (PinBoard pb : board.pins) { if (pb.pin.id.equals(this.pin.id)) { throw new DuplicatePinExcep
@PrePersist
public void preSave() throws DuplicatePinException {
Logger.info("PRESAVE");
for (PinBoard pb : board.pins) {
if (pb.pin.id.equals(this.pin.id)) {
throw new DuplicatePinException();
}
}
}
这个方法在我的钉板课上。我想要一种快速的方法来验证是否不能保存重复的条目。但是,如果我包含该方法,则不会保存任何内容。曾经我把它追溯到板.pins
。我假设pins在默认情况下是一个延迟加载的集合,因此可能是在保存时强制对其进行初始化导致了一些问题
我正在使用Play 1.2.5我不确定Play 1,但Play 2中不包括@PrePersist,所以方法永远不会被调用是控制台打印日志
Logger.info(“PRESAVE”)
?@iwawiwi是的,它没有问题。如果在循环之前执行List piboard\u List=board.pins
。然后在插接板列表上循环它是否仍然不存在?如果仍然不工作。我建议您在调用save()
方法之前,将验证代码放入控制器并执行此操作。