选择普通列+实体时从hql获取部分结果

时间:2017-07-11 13:01:06

标签: java hibernate jpa hql

我正在运行查询以从以下实体获取数据。

Product.java

public class Product {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="product_id")
    private Long productId;

    @OneToOne(mappedBy = "product")
    private ProductDescription description;

    @OneToOne(mappedBy = "product")
    private ProductPrice price;

    @Column(name="is_master")
    private String isMaster;

    @Column(name="free_shipping")
    private String freeShipping;
}

在运行以下查询时,我得到了正确的结果

String sql = "SELECT p.description, p.price "
            + "FROM " + Product.class.getName() + " p "
            + "WHERE p.productId = :productId";

但是,如果我运行以下查询,则说明和价格返回为空。

String sql = "SELECT p.description, p.price, p.isMaster, p.freeShipping "
            + "FROM " + Product.class.getName() + " p "
            + "WHERE p.productId = :productId";

日志中没有错误,返回了isMaster和freeShipping值,但描述和价格都是空的。

0 个答案:

没有答案