Mon*_*gGu 25 java jpa spring-data-jpa spring-boot java-record
我正在尝试做类似下面的事情。
@Entity
@Table(name="Sample")
public record Sample(Integer id, String name) {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="user_id")
private Integer id;
@Column(name="username")
private String name;
}
Run Code Online (Sandbox Code Playgroud)
但是,它给我错误“记录中不允许用户声明的非静态字段 id”,名称字段也相同。
有没有办法将新的java功能“记录”与JPA注释一起使用?
Bas*_*que 36
目前尚无支持,但可能会在 2024 年晚些时候提供支持。
\n根据Ivar Grimstad 的《Jakarta EE 11:下一个主要 Jakarta EE 更新正在形成》,2023 年 8 月:
\n请参阅Billy Korando 撰写的文章“在 JPA 中使用记录作为投影” 。以下是一个简短的总结。
\nJakarta Persistence ( JPA;以前的Java Persistence API)实现(例如Hibernate)依赖于JEP 395 禁止或不推荐的功能:记录规范:无参数构造函数、非最终字段、setter 等。
\n\xe2\x9e\xa5 所以,不,记录不能用作 JPA Entity。
您可以将记录用于:
\nCriteriaBuilderTypedQueryNativeQuerySpring data 也有一些支持。
\n请参阅上面链接的文章了解详细信息以及其他两篇文章的链接。
\n| 归档时间: |
|
| 查看次数: |
11782 次 |
| 最近记录: |