23、Hibernate查询与过滤:HQL批量操作、原生SQL及过滤器应用

Hibernate查询与过滤:HQL批量操作、原生SQL及过滤器应用

1. HQL批量更新与删除

HQL(Hibernate Query Language)提供了强大的批量更新和删除功能,通过 Query<R> 接口的 executeUpdate() 方法可以执行HQL的 UPDATE DELETE 语句。该方法返回一个整数,表示受更新或删除操作影响的行数。

1.1 批量更新

HQL的更新语句基于SQL的 UPDATE 语句,但在编写时不需要使用别名,直接在类名后使用 set 关键字。以下是一个示例:

String hql = "update Supplier set name = :newName where name = :name";
Query query = session.createQuery(hql);
query.setString("name","SuperCorp");
query.setString("newName","MegaCorp");
int rowCount = query.executeUpdate();
System.out.println("Rows affected: " + rowCount);
//查看更新结果
Query<Supplier> q = session.createQuery("from Supplier", Supplier.cla
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值