【发布时间】:2019-05-18 17:18:52
【问题描述】:
所以,我有这个实体
@Entity
@Table(name = "VISITOR_IMAGE")
public class VisitorImage implements Serializable {
@Id
@Column(name = "VISITOR_ID")
private Long visitorId;
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
@PrimaryKeyJoinColumn(name = "VISITOR_ID", referencedColumnName = "ID")
private Visitor visitor;
@Column(name = "NAME")
private String name;
@Column(name = "DATA")
private byte[] data;
@Column(name = "CONTENT_TYPE")
private String contentType;
@Column(name = "SIZE")
private Long size;
//getters and setters
}
这里我有 jpa 存储库:
@Repository
public interface VisitorImageRepository extends JpaRepository<VisitorImage, Long> {}
所以当我在服务中调用 delete 时,没有错误或任何东西,但它没有被删除
@Override
public void deleteByVisitorId(Long visitorId) {
visitorImageRepository.delete(visitorId);
}
我不知道为什么它没有被删除...表的主键是“VISITOR_ID”
我会补充一点,保存效果很好。
有什么帮助吗?
【问题讨论】:
-
在 application.properties 中将日志设置为
logging.level.org.springframework.data.repository=DEBUG。它可能会在控制台中为您提供有关正在发生的事情的更多信息。
标签: java spring-boot jpa spring-data-jpa repository