在Hibernate中删除多条数据可以使用HQL(Hibernate Query Language)或者使用Criteria API来实现。
使用HQL删除多条数据的语法如下:
String hql = "delete from EntityName where condition";
Query query = session.createQuery(hql);
query.executeUpdate();
其中,EntityName
是实体类的名称,condition
是要删除的数据的条件。
使用Criteria API删除多条数据的示例代码如下:
CriteriaBuilder builder = session.getCriteriaBuilder();
CriteriaDelete<EntityName> criteriaDelete = builder.createCriteriaDelete(EntityName.class);
Root<EntityName> root = criteriaDelete.from(EntityName.class);
criteriaDelete.where(builder.equal(root.get("propertyName"), value));
session.createQuery(criteriaDelete).executeUpdate();
其中,EntityName
是实体类的名称,propertyName
是实体类中的属性名,value
是要删除的数据属性的值。
需要注意的是,使用以上方法删除数据时,要确保在删除数据之前已经启用了事务。