小编Jör*_*ätt的帖子

为什么我的JPA实体的更改不会持久存储到数据库中?

在Spring Boot Applicaion中,我有Task一个状态在执行期间发生变化的实体:

@Entity
public class Task {

  public enum State {
    PENDING,
    RUNNING,
    DONE
  }

  @Id @GeneratedValue
  private long id;
  private String name;
  private State state = State.PENDING;

  // Setters omitted

  public void setState(State state) {
    this.state = state; // THIS SHOULD BE WRITTEN TO THE DATABASE
  }

  public void start() { 
    this.setState(State.RUNNING);

    // do useful stuff
    try { Thread.sleep(2000); } catch(InterruptedException e) {}
    this.setState(State.DONE);
  }
} 
Run Code Online (Sandbox Code Playgroud)

如果状态发生更改,则应将对象保存在数据库中.我正在使用这个Spring Data接口作为存储库:

 public interface TaskRepository extends CrudRepository<Task,Long> {}
Run Code Online (Sandbox Code Playgroud)

而这段代码创建并启动Task …

jpa spring-data spring-data-jpa

5
推荐指数
1
解决办法
4409
查看次数

标签 统计

jpa ×1

spring-data ×1

spring-data-jpa ×1