我有:
@Column(name = "UserType", nullable = false)
@Enumerated(EnumType.STRING)
private UserType userType;
如何使用addScalar()方法通过SQL请求返回这个字段?
我有:
@Column(name = "UserType", nullable = false)
@Enumerated(EnumType.STRING)
private UserType userType;
这是如何将枚举类型添加到SQLQuery的方法:
定义一个属性对象
Properties params = new Properties();
params.put("enumClass", "UserType");
params.put("type", "12"); /*EnumType.STRING type = 12 */
你解决了枚举类型:
Type userEnumType = sessionFactory.getTypeHelper().custom(UserType.class, params);
您执行了查询:
List<SomeEntity> result = getSession().createSQLQuery("select e from SomeEntity ")
.addScalar("userType", userEnumType)
.setResultTransformer(Transformers.aliasToBean(SomeEntity.class))
.list();