San*_*jay 2 spring hibernate jpa spring-data spring-data-jpa
在使用JpaRepositorySpring Data JPA的方法(例如findOne、findBy...等)获取实体后,我想知道自动执行一些自定义代码的最佳方法是什么,比如初始化一些瞬态字段。
换句话说,假设我有一个用户实体fullName瞬态场,应设置为串联firstName,并lastName从数据库中获取后,我该怎么办?
首先,如果您想要全名,只需编写一个方法来即时连接姓名/姓氏。它不一定是一个字段。
如果你真的需要对实体负载做一些处理,那么注册一个@PostLoad实体生命周期回调:
public class MyEntity{
@PostLoad
//invoked by framework on entity load.
public void doStuff(){
fullName = forename + " " + surname;
}
//alternative
public String getFullName(){
return forename + " " + surname;
}
Run Code Online (Sandbox Code Playgroud)
https://en.wikibooks.org/wiki/Java_Persistence/Advanced_Topics#Example_of_Entity_event_annotations