Java Hibernate更新查询:如何设置默认值?

Java Hibernate更新查询:如何设置默认值?,java,hibernate,hql,Java,Hibernate,Hql,我有两个实体类 class User { Integer userId; String userName; UserType userType; } 及 类用户类型{ 整数类型ID; 字符串类型; 设置用户列表; } 如何通过HQL更新查询在所有user.UserTypewhereuser.UserType=null中设置new UserType() 我是新加入hibernate的。您可以执行以下操作: UserType userType = /* code to

我有两个实体类

class User { 
    Integer userId;
    String userName;
    UserType userType;
}

类用户类型{
整数类型ID;
字符串类型;
设置用户列表;
}
如何通过HQL更新查询在所有
user.UserType
where
user.UserType=null
中设置
new UserType()


我是新加入hibernate的。

您可以执行以下操作:

UserType userType = /* code to get already persisted userType */;

Query query = session.createQuery("update User u set u.userType = :newType where u.userType is null");
query.setParameter("newType", userType);
int result = query.executeUpdate();

你可以这样做:

UserType userType = /* code to get already persisted userType */;

Query query = session.createQuery("update User u set u.userType = :newType where u.userType is null");
query.setParameter("newType", userType);
int result = query.executeUpdate();

阅读此链接的更新查询示例部分:阅读此链接的更新查询示例部分:谢谢Spaeth,我只想使用Query.setString和Query.setInterger设置id和用户名谢谢Spaeth,我只想使用Query.setString和Query.setInterger设置id和用户名