 
- Hibernate教程
- Hibernate - 主页
- ORM - 概述
- Hibernate - 概述
- Hibernate - 架构
- Hibernate - 环境
- Hibernate - 配置
- Hibernate - 会话
- Hibernate - 持久类
- Hibernate - 映射文件
- Hibernate - 映射类型
- Hibernate - 示例
- Hibernate - O/R 映射
- Hibernate - 注释
- Hibernate - 查询语言
- Hibernate - 标准查询
- Hibernate - 原生 SQL
- Hibernate - 缓存
- Hibernate - 批处理
- Hibernate - 拦截器
- Hibernate 有用资源
- Hibernate - 问题与解答
- Hibernate - 快速指南
- Hibernate - 有用的资源
- Hibernate - 讨论
Hibernate - 持久类
Hibernate 的整个概念是从 Java 类属性中获取值并将它们保存到数据库表中。映射文档帮助 Hibernate 确定如何从类中提取值并将它们与表和关联字段进行映射。
其对象或实例将存储在数据库表中的 Java 类在 Hibernate 中称为持久类。如果这些类遵循一些简单的规则(也称为普通旧 Java 对象(POJO) 编程模型),Hibernate 效果最佳。
持久类有以下主要规则,但是,这些规则都不是硬性要求 -
- 所有要保留的 Java 类都需要一个默认构造函数。 
- 所有类都应包含一个 ID,以便轻松识别 Hibernate 和数据库中的对象。此属性映射到数据库表的主键列。 
- 所有要保留的属性都应声明为私有,并具有以 JavaBean 风格定义的getXXX和setXXX方法。 
- Hibernate 的一个核心特性是代理,它依赖于持久类是非最终的,还是声明所有公共方法的接口的实现。 
- 所有不扩展或实现 EJB 框架所需的某些专用类和接口的类。 
POJO 名称用于强调给定对象是普通 Java 对象,而不是特殊对象,特别是不是 Enterprise JavaBean。
简单的 POJO 示例
基于上面提到的一些规则,我们可以定义一个 POJO 类,如下所示 -
public class Employee {
   private int id;
   private String firstName; 
   private String lastName;   
   private int salary;  
   public Employee() {}
   public Employee(String fname, String lname, int salary) {
      this.firstName = fname;
      this.lastName = lname;
      this.salary = salary;
   }
   
   public int getId() {
      return id;
   }
   
   public void setId( int id ) {
      this.id = id;
   }
   
   public String getFirstName() {
      return firstName;
   }
   
   public void setFirstName( String first_name ) {
      this.firstName = first_name;
   }
   
   public String getLastName() {
      return lastName;
   }
   
   public void setLastName( String last_name ) {
      this.lastName = last_name;
   }
   
   public int getSalary() {
      return salary;
   }
   
   public void setSalary( int salary ) {
      this.salary = salary;
   }
}