1 基础映射
1.1 表名/类名映射
Hibernate对持久化类的要求:
1. 默认的无参构造器(Hibernate会通过反射的方式创建对象)
2. 提供标识字段(对应关系型数据库二维表中的主键)
3. 最好是非final类(否则可能无法通过动态生成字节码的方式创建代理对象来改善性能)
4. 持久化字段避免使用基本数据类型并提供访问器和修改器
1.2 主键映射
1.3 字段映射
@Transient
不需要持久化的属性
@Lob
CLOB和BLOB对象
session.getLobHelper().createBlob(byte[]buffer);
session.getLobHelper().createBlob(InputStreamin, int length);
session.getLobHelper().createClob(Stringstr);
session.getLobHelper().createClob(Readerreader, int length);
或者
Hibernate.getLobCreator(Session).createBlob(byte[]buffer);
Hibernate.getLobCreator(Session).createBlob(InputStreamin, int length);
Hibernate.getLobCreator(Session).createClob(Stringstr);
Hibernate.getLobCreator(Session).createClob(Readerreader, int length);
2 集合映射
3 组件映射
4 继承映射
5 关联映射
6 实例
6.1 表级别
6.1.1 @Entity和@Table
6.2 主键
6.2.1 @Id和@GeneratedValue
6.3 字段
6.3.1 @Column
6.4 对应关系
6.4.1 @OneToMany
6.4.2 @ManyToOne