Spring 引导 REST 资源更改未应用
Spring Boot REST Resource Changes not Applying
我有一个非常简单的 Spring 启动应用程序,它由一个 Order
和一个 JpaRepository
@RepositoryRestResource
:
@Entity
public class Order {
@Id
@GeneratedValue
private Long recordId;
@Length(max = 64)
private String orderType;
.....
}
@RepositoryRestResource
public interface OrderRepository extends JpaRepository<Order, Long>,
QuerydslPredicateExecutor<Order> {
}
我最近将字段 orderKind
更改为 orderType
。我确保数据库已更新。但是,在端点上,更改不适用。它仍然 expects/returns orderKind
.
我通过清理项目、删除任何生成的源以及直接从命令行 运行 排除了任何 IDE 问题,但没有成功。
也已验证,生成的 QOrder.java
也已正确定义 orderType
。
在写这篇文章的时候,发现这个问题是微不足道的。当我重构字段名称时,我忘记更新该字段的 getter 和 setter,因此它们仍然显示为:
public String getOrderKind() {
return orderType;
}
public void setOrderKind(String orderKind) {
this.orderType = orderKind;
}
我是 spring 引导的新手,没有意识到它是定义 API 的方法,事后看来这似乎很明显,因为字段是私有的。
我有一个非常简单的 Spring 启动应用程序,它由一个 Order
和一个 JpaRepository
@RepositoryRestResource
:
@Entity
public class Order {
@Id
@GeneratedValue
private Long recordId;
@Length(max = 64)
private String orderType;
.....
}
@RepositoryRestResource
public interface OrderRepository extends JpaRepository<Order, Long>,
QuerydslPredicateExecutor<Order> {
}
我最近将字段 orderKind
更改为 orderType
。我确保数据库已更新。但是,在端点上,更改不适用。它仍然 expects/returns orderKind
.
我通过清理项目、删除任何生成的源以及直接从命令行 运行 排除了任何 IDE 问题,但没有成功。
也已验证,生成的 QOrder.java
也已正确定义 orderType
。
在写这篇文章的时候,发现这个问题是微不足道的。当我重构字段名称时,我忘记更新该字段的 getter 和 setter,因此它们仍然显示为:
public String getOrderKind() {
return orderType;
}
public void setOrderKind(String orderKind) {
this.orderType = orderKind;
}
我是 spring 引导的新手,没有意识到它是定义 API 的方法,事后看来这似乎很明显,因为字段是私有的。