关于Hibernate的删除方式搞了一上午,终于完成啦。
Hibernate的删除方式:
/*方式一*/
String hql = "select p from Province as p where p.id=?";
Query query = session.createQuery(hql);
query.setString(0, id);
Province p = (Province)query.list().get(0);
session.delete(p);
/*方式二*/
String hql = "delete Province where id=?";
Query query = session.createQuery(hql);
query.setString(0, id);
int x = query.executeUpdate();
if(x>0){
flag = true;
}
/*方式三*/
Province p = (Province)session.get(Province.class, id);
session.delete(p);
方式一相对比较笨重。
方式二中的Hql语句不要加as + 别名,最开始写的时候就因为这个一上午时间就这么给浪费啦,希望朋友们不要犯和我一样的错误哦!
方式三是Hibernate自带的方法。
加油加油!
分享到:
相关推荐
Hibernate查询语言(HQL)是一种面向对象的查询语言,它允许开发者以面向对象的方式来操作数据库中的数据。HQL与SQL有些相似,但是它是基于类和属性而非数据库表和列的。HQL是Hibernate框架的核心组件之一,它支持...
通过HQL进行批量插入、更新和删除操作是一种高效且简便的方式。合理地利用HQL的特性,结合适当的内存管理和事务控制策略,可以显著提高应用程序的性能和稳定性。同时,在特定场景下选择使用原生SQL也是提高效率的...
HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的数据检索方式,使开发人员能够更高效地与数据库交互。本文将详细介绍HQL的基本用法及高级特性。 #### 1. 查询所有记录(Select) ...
HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了与SQL类似的功能,但更贴近于面向对象编程的思维方式。HQL允许开发人员以一种更自然的方式查询数据库,同时保持了Java对象模型的一致性。 #### ...
在IT领域,尤其是在Java开发中,Hibernate是一个非常重要的持久化框架,它简化了数据库操作,使得开发者能够以面向对象的方式处理数据库。本文将深入探讨HQL(Hibernate Query Language),它是Hibernate框架内官方...
HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者以一种类似于SQL但更接近于面向对象的方式来编写查询。本文将详细介绍HQL中的实体查询,并提供一些实际应用场景。 ##### 示例:TUser 类 ...
总结来说,HQL提供了一种面向对象的数据库查询方式,它抽象了直接对数据库表的查询,让开发者能够以对象的方式操作数据库。通过HQL,开发者可以执行复杂的查询操作,包括基本查询、属性查询、高级查询以及更新和删除...
总结来说,HQL是Hibernate中用于对象-关系映射查询的强大工具,它简化了与数据库的交互,允许开发者以更面向对象的方式处理数据查询、更新和删除操作,提高了代码的可读性和可维护性。理解并熟练掌握HQL是每个使用...
在探讨HQL(Hibernate Query Language)时,我们首先要了解它是一种用于Hibernate框架中的查询语言,其语法结构与标准SQL查询语言非常相似,但又针对对象关系映射(ORM)进行了优化。本文将详细介绍HQL的基本用法...
- **定义**: HQL(Hibernate Query Language)是一种面向对象的查询语言,它的语法类似于SQL,但不同于直接操作数据库表,HQL操作的是持久化的Java对象。这意味着在编写查询时,可以使用Java对象模型中的类名和属性...
HQL(Hibernate Query Language)是Hibernate框架中用于查询数据库的一种面向对象的查询语言。它允许开发人员以面向对象的方式编写查询,而不是直接使用SQL。HQL支持各种查询操作,包括插入、删除、更新以及复杂的...
通过上述示例,我们可以看到HQL提供了一种简洁且强大的方式来处理数据库中的增删改查操作。理解这些基本操作的实现原理,有助于开发者更好地利用Hibernate框架来提高应用程序的数据访问效率和性能。
HQL是一种面向对象的查询语言,用于在Hibernate框架中执行数据库操作。下面将详细阐述这些知识点: ### HQL 增删改查 #### 1. 获取当前会话 (getCurrentSession) 在Hibernate中,`getCurrentSession`方法用于获取...
- HQL查询的性能:虽然HQL方便,但在大型系统中应考虑其性能影响,可能需要优化查询以减少数据库负载。 - 数据库独立性:HQL提供了一定程度的数据库无关性,但并非完全。在特定场景下,可能需要使用原生SQL查询以...
一种方法是动态构建Hql语句,将数组元素拼接成一个逗号分隔的字符串,然后在`in`子句中使用这个字符串。例如,`id in ('1','2','3')`。另一种方法是使用Hibernate的参数绑定功能,直接将数组作为参数传递,Hibernate...
- 引用占位符也是一种参数绑定方式,如`String hql = "from TUser where name=:name and age=:age"`,然后通过`query.setParameter("name", "Erica")`和`query.setParameter("age", 20)`来设置参数。 HQL的强大...
HQL删除语句用于从数据库中移除记录。例如,第7行的`delete PhUser a where a.userId=2`将删除`PhUser`表中所有`userId`为2的记录。另一种格式(第10-16行)展示了如何在一个匿名内部类中使用`HibernateCallback`...
**HQL**(Hibernate Query Language)是Hibernate框架推荐使用的查询语言,它提供了一种面向对象的方式来查询数据库,支持多种复杂的查询操作,如继承、多态及关联关系的查询。 ##### 默认数据库表和数据 在本文档...