在 Hibernate 中，我们可以创建一个实体对象并将其保存到数据库中，或从数据库中获取一个实体的数据。每个实体都与其生命周期相关联，实体对象在生命周期的不同阶段中流转。Hibernate 生命周期包含以下状态：瞬时状态（Transient state）持久化状态（Persistent state）游离状态（Detached state）[...]
什么是 JPA？JPA（Java Persistence API）是 Java 的一种规范，用于在 Java 对象和关系数据库之间访问、管理和持久化数据。它被认为是对象关系映射的标准方法。JPA 可以看作是面向对象的领域模型和关系数据库系统之间的桥梁。作为一种规范，JPA 本身不执行任何操作，因此需要实现。因此，像 Hibernate、TopLink 和 iBatis 这样的 ORM 工具实现了 JPA 规范以进行数据持久化。[...]
由于 Hibernate 可以在不同环境中运行，它需要广泛的配置参数。这些配置包含提供给 Java 类不同功能的映射信息。通常，我们在配置文件中提供与数据库相关的映射。Hibernate 允许在 XML 文件（如 hibernate.cfg.xml）或属性文件（如 hibernate.properties）中提供配置。[...]
Hibernate教程-Hibernate and Spring Integration
Hibernate教程-Hibernate and Struts 2 Integration
我们可以将任何Struts应用程序与Hibernate集成。这不需要额外的努力。在这个示例中，我们将使用Struts 2框架和Hibernate来创建一个注册表单，并将这些数据存储到数据库中。让我们看看如何创建将Struts 2应用程序与Hibernate集成的文件。[...]
Hibernate二级缓存 使用 所有会话工厂的会话对象的公共缓存。当你有多个会话对象来自同一个会话工厂时，它非常有用。SessionFactory 持有二级缓存数据。它对所有会话对象是全局的，并且默认未启用。不同的供应商提供了二级缓存的实现：EH CacheOS CacheSwarm CacheJBoss Cache[...]
Hibernate缓存通过将对象池化在缓存中来提高应用程序的性能。当我们需要多次获取相同的数据时，缓存非常有用。主要有两种类型的缓存：一级缓存二级缓存[...]
Hibernate命名查询是一种通过有意义的名称来使用任何查询的方法。它类似于使用别名。Hibernate框架提供了命名查询的概念，使得应用程序员不必将查询分散在所有Java代码中。有两种在Hibernate中定义命名查询的方法：通过注解通过映射文件[...]
Hibernate Criteria Query Language (HCQL) 用于基于特定标准获取记录。Criteria接口提供了应用各种条件的方法，例如检索所有工资大于50000的记录。HCQL的优势HCQL提供了添加条件的方法，因此Java程序员可以很容易地在查询中添加条件。Java程序员能够在一个查询中添加许多条件。[...]
Hibernate查询语言 (HQL) 与SQL（结构化查询语言）相同，但它不依赖于数据库中的表。HQL使用类名代替表名，因此是一种与数据库无关的查询语言。HQL的优势HQL有很多优点，如下所示：与数据库无关支持多态查询对于Java程序员来说容易学习[...]