public class Person implements Serializable {
private Integer personId;
//姓名
private String personName;
//性别
private String sex;
//联系电话
private String phone;
//相应的setter,getter
}
person.xml:(含子类Doctor)
<class name="com.yang.model.human.Person" table="t_person">
<id name="personId" column="person_id">
<generator class="native" />
</id>
<discriminator type="string" column="personType"></discriminator>
<property name="personName" />
<property name="sex" />
<property name="phone"></property>
<subclass name="com.yang.model.human.Doctor" discriminator-value="doctor">
<property name="password" />
<many-to-one name="technicalOffice" column="officeid" />
<one-to-one name="workTime" constrained="true"/>
</subclass>
</class>
Doctor类:(与TechnicalOffice 是双向一对多)
private String password;
//医生所属的科室
private TechnicalOffice technicalOffice;
//医生的工作时间
private WorkTime workTime;
分享到:
相关推荐
7. **多态性支持**:Hibernate支持多态查询,可以根据继承关系将子类对象一起查询出来,便于处理复杂的对象模型。 8. **延迟加载(Lazy Loading)**:Hibernate可以实现属性或关联关系的延迟加载,只有在真正需要时...
在当今的Web开发领域,数据持久化是一个必不可少的环节,而Hibernate作为Java领域广泛使用的对象关系映射(ORM)框架,极大地简化了数据库操作。然而,随着互联网应用的规模不断扩大,对数据访问速度的要求也日益...
4. **继承映射**:支持多种继承映射策略,如单表(Single Table)、类表(Class Table)、子表(Subclass Table)等。 5. **属性映射**:定义实体类属性与数据库表字段之间的映射关系,支持基本类型、枚举类型、复杂...
实体类需要继承Hibernate的Entity接口或使用@Entity注解,属性通过@Id和@Column等注解进行映射。 四、查询机制 Hibernate提供了两种查询方式:HQL和 Criteria API。HQL是面向对象的查询语言,类似于SQL,但操作的是...
7. **多态支持**:Hibernate支持对象的多态性,可以在查询时返回父类类型,这对于继承体系下的对象操作非常方便。 8. **JPA支持**:尽管Hibernate本身就是一个强大的ORM框架,但同时也兼容Java Persistence API...
《Hibernate注解3.4.0.GA中文版》是一个针对Java开发人员的重要参考资料,它详细阐述了如何在Hibernate框架中使用注解进行对象关系映射(ORM)。Hibernate是Java领域广泛使用的持久化框架,通过将Java类与数据库表...
而`hibernate-annotations-3.4.0.jar`是Hibernate框架中的一个关键组件,它主要负责提供对象-关系映射的注解支持,使得开发者能够以更加面向对象的方式来处理数据库操作。 Hibernate Annotations是Hibernate框架的...
8. **继承映射** - `@Inheritance`: 控制类的继承策略,如SINGLE_TABLE、JOINED、TABLE_PER_CLASS。 - `@DiscriminatorValue`: 用于多态继承,定义子类在父类表中的区分值。 9. **复合主键** - `@EmbeddedId`: ...
2. 映射(Mapping):实体对象与数据库表之间的映射关系由Hibernate的XML配置文件(hibernate.cfg.xml)或注解完成。 3. Session:是Hibernate的主要工作单元,负责保存、查询和更新对象,它是线程安全的,每次...
4. Inheritance Strategies:Hibernate支持多种继承策略,如单表继承、联合继承和表 per class。在源码中,可以看到这些策略如何在`org.hibernate.mapping`包下的实体类映射中实现。 5. Transactions:JPA提供了...
9. **多态性支持**:Hibernate允许在继承结构中保存和检索对象,处理多态类型的数据。 10. **关联映射**:包括一对一(OneToOne)、一对多(OneToMany)、多对一(ManyToOne)、多对多(ManyToMany)的映射,通过`@...
Hibernate,作为Java领域中广泛使用的对象关系映射(ORM)框架,对于SSH(Spring、Struts、Hibernate)项目开发至关重要。在Java Web开发中,Hibernate扮演着连接数据库与Java对象的角色,极大地简化了数据操作,...
Hibernate支持多种持久化模型,如单态、聚合、继承等,允许开发者根据业务需求灵活选择。 七、性能优化 在4.3.8.Final版本中,Hibernate进一步提升了性能,包括优化查询执行、减少数据库连接开销、提高缓存效率等。...
4. **继承映射** 使用`@Inheritance`注解可以处理类继承关系,支持单表继承(SINGLE_TABLE)、联合继承(JOINED)和表-per-hierarchy(TABLE_PER_CLASS)策略。 5. **复合主键** `@EmbeddedId`和`@Embeddable`...
- `@Inheritance`:继承关系映射,可以设置单表继承或多表继承策略。 - `@SequenceGenerator`:定义序列生成器,适用于数据库不支持自增主键的情况。 **Hibernate 4.x及更高版本的变化** 从Hibernate 4.x开始,...
Hibernate是Java领域中广泛使用的对象关系映射(ORM)工具,它极大地简化了数据库操作。在3.4.0版本中,Hibernate引入了注解支持,以替代XML配置文件,使代码更加简洁和直观。 **1. Hibernate注解的基本概念** ...
6. Inheritance Mapping(继承映射) Hibernate支持单表继承、联合继承和表-per-hierarchy三种继承策略。在XML映射文件中,可以使用`<subclass>`或`<joined-subclass>`元素来定义子类,而在注解方式下,可以使用`@...
9. **多态映射**:Hibernate允许在继承体系中进行多态映射,便于处理复杂的业务逻辑。 10. **关联映射**:包括一对一(OneToOne)、一对多(OneToMany)、多对一(ManyToOne)、多对多(ManyToMany)关系,以及懒...
对于持久化类的设计,《hibernate-reference-3.1.1.pdf》提供了详细的指导原则,包括简单的POJO示例、继承的实现、`equals()`和`hashCode()`方法的重写,以及动态模型和元组化器的使用。这些内容帮助开发者构建出既...