在使用hibernate映射的时候
如果配置:
@OneToMany(cascade = CascadeType.PERSIST, fetch = FetchType.EAGER)
@JoinColumn(name = "orderId", referencedColumnName = "ORDER_ID")
private Set<RedeliveryBucketDetailEntity> bucketDetails;
@ManyToOne
@JoinColumn(name = "orderId", insertable = false, updatable = false)
private RedeliveryBucketEntity bucket;
这里的name 引用的字段名
这时候调用findAll 的时候,会导致 出现 查询错误, 会把orderId 当成数据库的一个字段
出现类似:
bucketdeta0_.orderId as orderId18_17_2_,
这是不对的,
需要在NAME这里也设置数据库列名 ORDER_ID
本文详细解析了在使用Hibernate进行实体映射时遇到的问题及解决方法。特别关注了一对多和多对一关系中字段映射的具体配置,指出在特定情况下如何避免因字段名称配置不当导致的查询错误。
1081

被折叠的 条评论
为什么被折叠?



