hql组成部分是根据代码中的实体类,而不是数据库的表
@Entity
public class Bean{
@Column(name = "a")
private String prop;
@Column(name = "b")
private int prop2;
}
//与数据库表的列名没有关系(与a,b没有关系)
from Bean obj where obj.prop = 'value' and prop2 = 'value2'
bean:
实体类的名字
obj:
象征符号,也可以理解为类实体化后的对象名(可取任意值)
obj.prop:
obj
即为前面的对象名(必须与前面一致)
prop,prop2
该类的成员变量名(不是数据库的表中的列名),
value,value2:
对应的值,建议不管是数字还是字符串,都用单引号包起来(字符串则必须用单引号包起来)