阿里Java学习路线:阶段 2:数据库开发-SQL进阶及查询练习:课时7:概述模型、对象模型、关系模型

1、概述模型
对象模型:在java中是domain,例如:User、Student
is a :继承关系
has a :关系关系
(1)1对1
(2)1对多
(3)多对多

public class Person {
	private Hand[] hands;
}

use a :

class{
	public void(筷子) {
		人与筷子是用一个的关系
	}
}

关系模型:在数据库中表

当我们要完成一个软件系统时,需要把系统中的实体抽取出来,形成概念模型。
例如部门、员工都是系统中的实体。概念模型中的实体最终会成为Java中的类(对象模型),数据库中的表(关系模型)。

实体之间还存在着关系,关系有三种:
(1)一对一:例如丈夫和妻子就是一对一的关系,一个男人只能有一个妻子,而一个女人只能有一个老公。
(2)一对多:例如每个员工都从属一个部门,而一个部门可以有多个员工,其中员工是多方,而部门是一方。
(3)多对多:老师和学生的关系就是多对多,一个老师可以有多个学生,一个学生可以有多个老师。

概念模型在Java中成为实体类(JavaBean)
类就使用成员变量来完成关系,一般都是双向关联。
多对一双向关联中,即员工关联部门,部门也关联员工。

class Empoyee { // 多方关联一方
	...
	private Department department;
}
class Department { // 一方关联多方
	...
	private List<Employee> employees;
}
class Husband {
	...
	private Wife wife;
}
class Wife {
	...
	private Husband husband;
}
class Student {
	...
	private List<Teacher> teachers;
}
class Teacher {
	...
	private List<Student> students;
}

2、外键约束
(1)外键必须是另一个表的主键的值(外键要引用另一个表的主键)
(2)外键可以重复
(3)外键可以为NULL。
(4)一张表中可以有多个外键。

BBS论坛:(用来理解引用关系)
用户
主题贴:
回复帖:
1、作者:用户
2、主贴:主题

在这里插入图片描述
在这里插入图片描述
对象模型:可以双向关联,而且引用的是对象,而不是一个主键。
关系模型:只能多方引用一方,而且引用的只是主键,而不是一整行记录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值