策略1:One table per subclass
从结构上来看这是一种依赖性比较强的数据库结构,3张表之间本身是独立的。而它们之间的关系却需要手动维护。
这条查询语句返回的结果是3张表的集合 Person+Individual+Corporation。 但是值得商榷的是这个query语句会查询3个数据库,效率问题会是以后一个比较明显的问题。
这条查询语句返回的结果就是1张表的内容 Corporation
策略2: Single table per class hierarchy
这种结构把一个继承树全部移植到一张表内,通过一个字段来标识。相对而言,任何填加,修改,删除的操作都针对于一张表而言,在速度上有一定的优势,但是由于通过一个字段来体现多态,结构局限性比较大。而且维护的成本也比较高!违反了OO的高内聚,低偶合的原则。
查询出来的结果是表tb_right的全部内容!
查询出来的结果是表tb_right中字段right_type为Lease_sub的所有字段!
查询出来的结果是表tb_right中字段right_type为Property_sub的所有字段!
策略3:字段共享策略
您还没有登录,请您登录后再发表评论
Java持久层框架是用于实现对象与数据库之间的交互,以便在软件开发过程中简化数据库操作的重要工具。本文旨在对比四种常用的Java持久层框架:Hibernate、iBatis(现称MyBatis)、EJB(Entity Bean)以及JDO(Java ...
11. **SSH(Spring、Struts、Hibernate)**:SSH是Java Web开发的三大框架组合,Spring负责依赖注入和事务管理,Struts处理请求和视图,Hibernate则作为持久层框架,简化数据库操作。 12. **EJB(Enterprise ...
4. **数据库设计**:如果系统需要持久化存储数据,则需要设计相应的数据库模型。 #### 四、面向对象编程语言的特点 1. **支持封装**:大多数现代OO语言都支持封装特性,如Java、C++等。 2. **支持继承**:OO语言...
在掌握了J2SE的基础后,进一步学习《Thinking in Enterprise Java》,了解J2EE(现在的Java EE)基础知识,如持久层机制。实践中,尝试使用jsp + servlet + javabean实现三层架构,区分表现层、业务层和数据访问层。...
OO编程包括封装、继承和多态三个主要特性。在这个论坛系统中,你可以看到如何通过类和对象来表示用户、帖子、评论等实体,以及它们之间的关系。通过分析源码,初学者能加深对这些概念的理解,并学习如何在实际项目中...
1.1 过程式程序设计与OO程序设计 2 1.2 从过程式开发转向面向对象开发 4 1.2.1 过程式程序设计 5 1.2.2 OO程序设计 5 1.3 对象到底是什么 5 1.3.1 对象数据 5 1.3.2 对象行为 6 1.4 类到底是什么 9 1.4.1 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
#### 六、数据持久层技术 1. **SQL与性能优化**:提升SQL技能,学习SQL查询优化技巧。 2. **JDBC**:掌握使用JDBC进行数据库操作的方法。 3. **Hibernate与ORM**:理解Hibernate的使用,深入学习ORM(对象关系...
在 Java 中,数据源通常是指数据库或其他持久化存储。 #### Data Management System (DBMS) **概念解析:** DBMS(数据库管理系统)是一种软件系统,用于管理数据库中的数据。它提供了创建、维护和访问数据的方式。...
- 类的设计原则,如封装、继承、多态。 - 对象的创建和使用。 - **高级语言特性** - 泛型的使用。 - 枚举类型的特点。 - 注解的应用场景。 - **异常** - 异常处理机制。 - 自定义异常类的实现。 - 如何...
相关推荐
Java持久层框架是用于实现对象与数据库之间的交互,以便在软件开发过程中简化数据库操作的重要工具。本文旨在对比四种常用的Java持久层框架:Hibernate、iBatis(现称MyBatis)、EJB(Entity Bean)以及JDO(Java ...
11. **SSH(Spring、Struts、Hibernate)**:SSH是Java Web开发的三大框架组合,Spring负责依赖注入和事务管理,Struts处理请求和视图,Hibernate则作为持久层框架,简化数据库操作。 12. **EJB(Enterprise ...
4. **数据库设计**:如果系统需要持久化存储数据,则需要设计相应的数据库模型。 #### 四、面向对象编程语言的特点 1. **支持封装**:大多数现代OO语言都支持封装特性,如Java、C++等。 2. **支持继承**:OO语言...
在掌握了J2SE的基础后,进一步学习《Thinking in Enterprise Java》,了解J2EE(现在的Java EE)基础知识,如持久层机制。实践中,尝试使用jsp + servlet + javabean实现三层架构,区分表现层、业务层和数据访问层。...
OO编程包括封装、继承和多态三个主要特性。在这个论坛系统中,你可以看到如何通过类和对象来表示用户、帖子、评论等实体,以及它们之间的关系。通过分析源码,初学者能加深对这些概念的理解,并学习如何在实际项目中...
1.1 过程式程序设计与OO程序设计 2 1.2 从过程式开发转向面向对象开发 4 1.2.1 过程式程序设计 5 1.2.2 OO程序设计 5 1.3 对象到底是什么 5 1.3.1 对象数据 5 1.3.2 对象行为 6 1.4 类到底是什么 9 1.4.1 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
17.4 GRASP:基本OO设计的系统方法 17.5 职责、GRASP和UML图之间的联系 17.6 什么是模式 17.7 现在我们所处的位置 17.8 使用GRASP进行对象设计的简短示例 17.9 在对象设计中应用GRASP 17.10 创建者 17.11 ...
#### 六、数据持久层技术 1. **SQL与性能优化**:提升SQL技能,学习SQL查询优化技巧。 2. **JDBC**:掌握使用JDBC进行数据库操作的方法。 3. **Hibernate与ORM**:理解Hibernate的使用,深入学习ORM(对象关系...
在 Java 中,数据源通常是指数据库或其他持久化存储。 #### Data Management System (DBMS) **概念解析:** DBMS(数据库管理系统)是一种软件系统,用于管理数据库中的数据。它提供了创建、维护和访问数据的方式。...
- 类的设计原则,如封装、继承、多态。 - 对象的创建和使用。 - **高级语言特性** - 泛型的使用。 - 枚举类型的特点。 - 注解的应用场景。 - **异常** - 异常处理机制。 - 自定义异常类的实现。 - 如何...