Java 休眠公式未设置值

Java 休眠公式未设置值,java,hibernate,db2,formula,Java,Hibernate,Db2,Formula,我有这个实体 @Entity public class OrderEntity { /** * Unique id of this order. */ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; @Formula(value="(select e.release from environment e where e.name = source_

我有这个实体

@Entity
public class OrderEntity {
   /**
   * Unique id of this order.
   */
   @Id
   @GeneratedValue(strategy = GenerationType.IDENTITY)
   private int id;

   @Formula(value="(select e.release from environment e where e.name = source_Environment)")
   private String release;

   @Column
   private String sourceEnvironment;
   
}

Hibernate生成以下查询:

SELECT orderentity0_.id              AS id1_5_,
    orderentity0_.source_environment AS source_21_5_,
    (SELECT e.release
        FROM environment e
        WHERE e.name = orderentity0_.source_Environment ) AS formula1_
FROM OrderEntity orderentity0_
当我对我的(db2)数据库手动执行查询时,我得到了预期的结果。但是当我对hibernate(orderEntity)创建的对象调用orderEntity.getRelease()时,它返回
null

回答我自己的问题: 我在公式中缺少架构,因此将其设置为:

   @Formula(value="(select e.release from myschema.environment e where e.name = 
                    source_Environment)")
   private String release;
解决了我的问题

   @Formula(value="(select e.release from myschema.environment e where e.name = 
                    source_Environment)")
   private String release;