Java Hibernate模板更新查询

Java Hibernate模板更新查询,java,hibernate,Java,Hibernate,如何使用hibernate模板使用hql更新查询这是hql语句“更新登录集empSmartId=48750005”+“其中empPassword=6328ef1675ddb7106eba8dc2661961d7” 使用getHibernatetemplate() 当前代码: public class LoginDaoImp extends HibernateDaoSupport implements LoginDao { public boolean resetAttempt(Logi

如何使用hibernate模板使用hql更新查询这是hql语句“更新登录集empSmartId=48750005”+“其中empPassword=6328ef1675ddb7106eba8dc2661961d7”

使用getHibernatetemplate()

当前代码:

public class LoginDaoImp extends HibernateDaoSupport implements LoginDao { 
    public boolean resetAttempt(Login login) { 
        try {
            login.setAttempt(0); 
            getHibernateTemplate().update(login); 
            return true; 
        } catch (Exception e) {
            e.printStackTrace();
        } 
        return false;
    }

}

我可以将整个pojo类保存在上述代码工作中,但我想使用where condition

hibernateDataSupport
将有一个
getSession()
方法,该方法将为配置的数据源返回hibernate会话对象。使用此
会话
,您可以说

Query updateQuery = getSession().createQuery("update Login l set l.empSmartId = :smartId where password = :password")
                   .setParameter("smartId", 48750005)
                   .setParameter("password", "6328ef1675ddb7106eba8dc2661961d7");
int noOfUpdatedRows = updateQuery.executeUpdate();

HibernateDaoSupport
将有一个
getSession()
方法,该方法将为配置的数据源返回hibernate会话对象。使用此
会话
,您可以说

Query updateQuery = getSession().createQuery("update Login l set l.empSmartId = :smartId where password = :password")
                   .setParameter("smartId", 48750005)
                   .setParameter("password", "6328ef1675ddb7106eba8dc2661961d7");
int noOfUpdatedRows = updateQuery.executeUpdate();
可能的重复可能的重复