我有一个用例来显示使用完整实体中值的子集的实体列表。我采用的方法是创建一个 EntityList 类,其中只有那些字段出现在列表中。此类映射到与完整实体相同的表,但仅包含字段的子集。
使用 HQL,我想根据完整实体中的字段过滤返回的 EntityList。在下面的示例中,我希望在 Entity 的描述字段(在表中但不在 EntityList 类中)过滤 EntityList。
public interface IThreePhaseMotorList {
abstract public Long getId();
abstract public String getMfg();
abstract public Double getPowerUnits();
abstract public Integer getPoles();
}
public interface IThreePhaseMotor extends IMotor {
public abstract Long getId();
public abstract void setId(Long id);
public abstract Integer getVersion();
public abstract void setVersion(Integer version);
public abstract String getIdsrc();
public abstract void setIdsrc(String idsrc);
public abstract String getDescription();
public abstract void setDescription(String description);
public abstract String getManufacturer();
public abstract void setManufacturer(String manufacturer);
public abstract Integer getPoles();
public abstract setPoles(Integer poles);
}
如果我直接针对表编写 SQL,它看起来像:
Select IThreePhaseMotorList.*
from IThreePhaseMotorList JOIN IThreePhaseMotor ON
IThreePhaseMotorList.id = IThreePhaseMotor.id
where IThreePhaseMotor.Description like 'test%';
无论如何在HQL中这样做吗?