Java 如何获取具有复杂主键的最新关联?

Java 如何获取具有复杂主键的最新关联?,java,hibernate,hibernate-mapping,Java,Hibernate,Hibernate Mapping,我需要将@OneToMany关联映射为一个实体@ManyToOne或@OneToOne,该实体具有最新字段 @实体 @吸气剂 @塞特 @Tablename=trips 公共类TripEntity实现了可序列化{ @身份证 @GeneratedValuestrategy=GenerationType.SEQUENCE,generator=trips\U SEQUENCE @GenericGeneratorname=trips\u序列, strategy=org.hibernate.id.enhan

我需要将@OneToMany关联映射为一个实体@ManyToOne或@OneToOne,该实体具有最新字段

@实体 @吸气剂 @塞特 @Tablename=trips 公共类TripEntity实现了可序列化{ @身份证 @GeneratedValuestrategy=GenerationType.SEQUENCE,generator=trips\U SEQUENCE @GenericGeneratorname=trips\u序列, strategy=org.hibernate.id.enhanced.SequenceStyleGenerator, 参数={ @参数名称=序列名称,值=行程顺序, @参数名称=初始值,值=100, @参数名称=增量大小,值=1 } @Columnname=trip\u id 私人长id; //最初是这样的映射: //@OneToManyOrphaneRemoving=true,mappedBy=trip,fetch=FetchType.LAZY,cascade=CascadeType.ALL //私有集tripTelemetry=新哈希集; //最后我需要这样的东西 //@多通或多通 私有TripTelemetry实体lastTripTelemetry; } @实体 @吸气剂 @塞特 @IdClassTripTelemetryEntity.TripTelemetryId.class @Tablename=跳闸/遥测 公共类TripTelemetryEntity实现可序列化{ @身份证 @Columnname=trip\u id 私人长三角; @许多酮 @JoinColumnname=trip\u id,insertable=false,Updateable=false 私人旅行; @身份证 @Temporaltype.TIMESTAMP @Columnname=发生在 私人约会发生; @凌驾 公共TripRyID getId{ 返回新的TripTelemetrydTripId,occurredOn; } /** *这表示trip_遥测表的复合主键。 */ @吸气剂 @塞特 @EqualsAndHashCode @AllArgsConstructor @诺尔格构装师 公共静态类TripTelemetryId实现可序列化{ 私有静态最终长serialVersionUID=1L; 受保护的长三角; 发生保护日期; } } 如果我加上

@JoinFormula从跳闸遥测r中选择r.id,其中r.trip\U id=描述限值1上r.Occursed\U的跳闸id顺序 所以我发现了一个例外:

原因:org.hibernate.AnnotationException:从com.app.core.domain.TripEntity引用com.app.core.domain.TripTelemetryEntity的外键的列号错误。应该是2

如果我这样做:

@许多酮 @Whereclause=发生时间=现在 私有tripTelemetry实体tripTelemetry; 我发现了一个例外: org.postgresql.util.PSQLException:错误:列tripentity0\u0.triptelemetry\u发生\u不存在