Spring-data:阻止更新
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring-data:阻止更新相关的知识,希望对你有一定的参考价值。
我正在寻找一种方法来防止使用spring-data更新对象。我找到了一些关于此的主题,但没有一个有解决方案。
我有一个可以创建和阅读的对象。而已。我不想支持修改/更新。我自己管理/生成数据库ID。
我很想使用org.springframework.data.repository.Repository
接口(或JpaRepository
/ CrudRepository
,如果我能以某种方式改变<S extends T> S save(S entity);
逻辑以防止更新),因为我喜欢干净的findBy ...界面符号。
到目前为止我发现的最佳解决方案是实现Persistable
并覆盖isNew(…)
以始终返回true。但这很糟糕,因为如果它是只读的,那么该对象不是“新的”。
有没有干净的方法来实现这一目标?
答案
例如,您可以使用Repository event handler来限制更新和删除操作:
@RepositoryEventHandler(MyEntity.class)
public class MyEntityEventHandler {
@HandleBeforeSave
public void handleUpdate(MyEntity entity) {
throw new HttpRequestMethodNotSupportedException("Update")
}
@HandleBeforeDelete
public void handleDelete(MyEntity entity) {
throw new HttpRequestMethodNotSupportedException("Delete")
}
}
以上是关于Spring-data:阻止更新的主要内容,如果未能解决你的问题,请参考以下文章
Wordpress阻止访问wp admin€“wpsnipp.com网站你博客的Wordpress代码片段