一个hibernate mapping的错误

在使用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)