java - JPA实体字段中多维数组的正确注释是什么
问题描述
映射到 postgres 中 text[] 类型数据的实体字段的正确注释是什么?
在 Postgres db 表中,我有一列类型为 text[]。我在哪里存储数据,例如:{{00:00:05,-,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {00:00:10,-,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}
我的实体类看起来像:
@Entity
@Data
@Table(name = "spiroergometry")
public class Spiroergonometry {
@Id
@Column(name="id")
private Long id;
@Column(name="first_name")
private String firstName;
@Column(name="last_name")
private String lastName;
@Column(name="height")
private double height;
@Column(name="weight")
private double weight;
@Column(name="t_start")
private Date tStart;
@Column(name="t_end")
private Date tEnd;
@Column(name="temperature")
private double temperature;
@Column(name="protocol")
private String protocol;
@Column(name="bd_date")
private Date bdDate;
@?????????
private List<SpiroRawData> rawData;
class SpiroRawData {
private String time;
private String wr;
private double vo2STPD;
private double vo2;
private double co2STPD;
private double veBTPS;
private double rer;
private String wrTM;
private double chD;
private double veVO2;
private double veVCO2;
private String v;
private double cho;
private double fat;
private double petO2;
private double petCO2;
private double sv;
}
解决方案
您无法将您的映射List<SpiroRawData>
到,text[]
因为SpiroRawData
它是一种具有自己属性的类型。
您可以@ElementCollection
改为使用 JPA 将其映射到单独的表。
@ElementCollection
@CollectionTable(joinColumns = @JoinColumn(name = "spiroergonometry_id"))
private List<SpiroRawData> rawData;
和
@Embeddable
public class SpiroRawData {...}
推荐阅读
- android - ARCore 如何使用 Unreal 记录 Android 手机屏幕上的照片和视频并保存到手机?
- firefox - Gridalicious 库未在 Firefox 中以全屏宽度加载网格
- batch-file - Delete files based on partial names in a text file
- python - altair 分组条形图格式轴和填充
- c++ - 如何将cpp文件中的静态函数暴露给其他文件
- php - PHP Laravel 单元测试,自定义断言失败消息
- javascript - 未捕获的类型错误:无法设置属性
- floating-point - 小数到字符串 - FloatToStrF 返回不精确的结果 - 替代解决方案?
- javascript - 特快专递制作provisionnel标头
- wxpython - wxpython中添加滚动条,但是没有出现