引用
面向对象的数据库设计
类的关联,继承在数据库中的体现:
类定义―――>表定义
类属性―――>表字段
类关系―――>表关系
对 象―――>表记录
Oid(对象 id)―――>业务无关
注:
在数据库中每一条记录都对应一个唯一的 id;
Id 通常是用来表示记录的唯一性的,通常会使用业务无关的数字类型
字段的个数不会影响数据库的性能,表则越多性能越低。
(一)类继承关系对应表,
1、为每一个类建一张表。通过父类的 Oid 来体现继承关系。
特点:在子类表中引用父类表的主建作为自己的外建。
优点:方便查询。属性没有冗余。支持多态。
缺点:表多,读写效率低。生成报表比较麻烦。
2、为每一个具体实现类建一个表
特点:父类的属性被分配到每一个子类表中。
优点:报表比较容易
缺点:如果父类发生改变会引起所有子了表随之更改。
并且不支持多态。数据有冗余。
3、所有的类在一张表中体现,加一个类型辨别字段
特点:效率高,查询不方便,用于重复字段不多时。
优点:支持多态,生成报表很简单。
缺点:如果任何一个类发生变化,必须改表。字段多,难以维护。
(二)类关联关系对应表
1,一对一关联,类关系对应成表时有两种做法:
一是引用主键,也就是一方引用另一方的主键既作为外键有作为自身的主键。
二是外键引用,一方引用另一方的主键作为自身的外键,并且自己拥有主键。
2,一对多关联,也就是多端引用一端的主键当作外键,多端自身拥有主键。
3,多对多关系,多对多关系是通过中间表来实现的,中间表引用两表的主键当作联合
主键,就可以实现多对多关联。
分享到:
相关推荐
【超市管理系统--面向对象程序设计(双语)设计报告】 超市管理系统是一种面向对象程序设计的典型应用,旨在解决小型超市日常运营中的信息管理和自动化问题。系统设计的目标是提供一个经济、实用且易于使用的解决方案...
它采用标准的SQL结构化查询语言,支持多种数据类型,提供面向对象存储的数据支持,具有第四代语言开发工具,支持Unix、Windows NT、OS/2、Novell等多种平台。 1.3 DB2 DB2是美国IBM公司开发的一套关系型数据库管理...
### JDBC连接数据库各种数据库参数详解 #### 一、Oracle8/8i/9i数据库(thin模式) 在Java中通过JDBC访问Oracle数据库时,通常采用thin驱动方式。thin驱动是一种纯Java驱动,无需依赖任何非Java代码即可完成与...
Java JDBC 数据库连接池总结 Java 语言中,JDBC(Java DataBase Connection)是应用程序与数据库沟通的桥梁。在 Web 应用开发的早期,主要使用的技术是 CGIASPPHP 等。之后,Sun 公司推出了基于 Java 语言的 ...
Java面向对象程序设计中,JDBC(Java Database Connectivity)是Java平台用来与各种数据库进行交互的一种标准接口。它使得Java开发者能够使用SQL语句来执行数据库操作,包括连接数据库、查询、更新、添加和删除数据...
Hibernate是一个流行的Java持久层框架,它允许开发人员使用面向对象的方式来操作数据库,自动将Java对象映射到数据库表。而方言(Dialect)是Hibernate为了适应不同数据库系统之间的差异而引入的概念,它定义了特定...
### GBase-8s数据库JDBC Driver程序员指南关键知识点概览 #### 1. 概述 - **GBase-8s JDBC Driver**:由南大通用数据技术股份有限公司开发,是一款用于连接GBase-8s数据库的Java数据库连接驱动程序。 - **目标读者*...
- 面向对象的设计,便于封装和重用代码。 - **缺点**: - 相对于原生API,访问速度可能会有所降低。 - 不同数据库产品的兼容性问题可能带来额外的工作量。 **1.6 JDBC版本** - **JDBC 1.x**:最初版本,提供了...
Java-JDBC 访问Oracle9i对象关系数据库的实现方法主要涉及以下几个关键知识点: 1. **Oracle9i的对象关系特性**: Oracle9i数据库在传统的关系模型基础上扩展了对象关系特性,支持用户自定义类型(UDT),包括对象...
面向对象设计与关系数据库设计之间的差异,源于两者理论基础的不同。面向对象设计强调耦合、聚合、封装等概念,关注数据和行为的封装;而关系数据库设计基于数学理论,专注于数据的存储和检索。这一差异导致在实际...
代码示例中展示了面向对象程序设计的基本结构,如`jdbc_winXsy`类和`InfoWindow`类,以及按钮和文本区的创建。`main`函数是程序入口,`InfoWindow`类继承自`Frame`并实现了`ActionListener`接口,用于处理按钮事件。...
首先,JAVA作为后端开发语言,以其跨平台的特性、丰富的类库和强大的面向对象能力,常用于构建Web应用程序。在本系统中,JAVA可能被用来处理业务逻辑,创建数据访问对象(DAO)以与数据库进行交互,以及构建控制层来...
通过阅读和分析源码,学习者可以深入理解每个类的作用以及它们之间的协作关系,从而提升对Java编程和面向对象设计的理解。 项目的jar包,即Java Archive,是一个包含了编译后的Java类文件、资源文件以及元数据的...
JDBC是Java API,它允许Java程序员以标准的、面向对象的方式与各种类型的数据库进行交互。JDBC提供了一组接口和类,使得开发者能够执行SQL语句、处理结果集、管理事务以及处理数据库连接等任务。 **MySQL数据库** ...
本文总结了 JAVA面向对象程序设计的知识点,涵盖了 Java 语言的基本语法、面向对象编程的概念、异常处理、多线程编程、网络编程、数据库编程等方面的知识。 一、Java 基础知识点 1. Java 语言的基本语法规则:变量...
Hibernate则是一个ORM(Object-Relational Mapping)框架,它将数据库操作转换为面向对象的操作。Hibernate允许开发者用Java对象来代表数据库记录,通过简单的对象操作就能完成数据的增删查改。它还支持级联操作、懒...