IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 使用StarUML绘制ER图,使用插件DDL将ER图转换成SQL脚本,使用插件Java生成Java代码 -> 正文阅读

[Java知识库]使用StarUML绘制ER图,使用插件DDL将ER图转换成SQL脚本,使用插件Java生成Java代码

整个都是使用软件starUML

1 使用StarUML绘制E-R图

1.1 ER图

E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
构成E-R图的三个基本要素是实体型属性联系

1.2 实体之间的关系

一对一:一个学生对一个学号,一个学生对一个学生证

一对多:实体集A 实体集B。在A这个集合里面任挑一个具体的实体,在B集合里面挑若干个不同的这一个实体,与之对应,这叫一对多。eg 一个老师可以跟很多学生授课

多对多:a集合和B集合,我在a里面选多个对象,可以与B中的对象去与之对应。eg 赵三可以选多门课程,一门课可以被多个学生选,所以从两个角度看,从学生的角度看,学课程是一个一对多,我从课程看,学生就是一个一对多,所以我综合起来就是一个多对多的,而绝对不是一对多的。(我的思考方式先固定一边,来看,再固定另一边,然后综合)

1.3 绘制—使用StarUML

打开StarUML后,会自动新建一个项目

  1. 选择上方的Model -> Add Diagram -> ER Diagram

在这里插入图片描述

也可以在右侧建立,右键即可

在这里插入图片描述

双击蓝色框,下方红色框即可改名

在这里插入图片描述

  1. 新建ER图后,可以看见左方有ER图的工具栏

在这里插入图片描述

点击Entity后,再到右边空白处点击,即可生成一个Entity对象

  1. 设置实体属性

在图中,右击实体选择 Add->Column

在这里插入图片描述

双击实体属性,可实现某些快捷操作

在这里插入图片描述

左边:设置主键,右边:添加属性,删除属性,上移,下移

添加属性后,点击属性,可以在Editors的Properties中点击type给属性添加类型

在这里插入图片描述

还可以通过length设置属性类型的长度

  1. 设置实体之间的关系

可以看到左栏中的Entity-Relationship中有实体关系的连线选择

在这里插入图片描述

eg 多对多情况,点击Many to Many Relationship,然后点中一个实体后,鼠标左键按住不放,拖动到另一个实体上

显示

在这里插入图片描述

点击连线,可以在右边Editors中进行更多的设置

在这里插入图片描述

eg : 一对多情况

在这里插入图片描述

1.4 总结

介绍了在StarUML中进行一个基本的ER图绘制,还对实体之间的几种关联关系进行举例。
下图是官方文档的ER图示例

在这里插入图片描述

1.5 参考资料

StarUML的ER图文档
E-R图 百度百科

2 starUML对数据库设计的帮助(很重要)

例如

在这里插入图片描述

2.1 填加属性

这个对学生来说的话,他有属性(学数据库有摘要属性),怎么给这个student加属性?

在这个工具里面可以加一个这样的,单击选到student,单击鼠标右键—>ADD—>column

选column, column选中以后直接改column ,比方说,这个学生有一个SID,是学号。

可以接着添加,也可以在别的里面添加属性

在这里插入图片描述

加完之后,这个图完成,基础结构都有了,但是如果要深入需要建立数据库还不够完备

在开数据库的可能看得到,有一个主关键字

数据库表里面能够为找到一条记录,这叫主关键字。主关键字是是唯一能够作区分的,区分不同,不同的表中的记录和记录之间区别。

比如:我报一个学号,如果在一个班级报一个学号,我说他点名,一定只有为一个人,不可能有多个人,因为学号在每个人身上都是唯一的,就像这里的主关键字。

2.2 设置主关键字

  1. 双击SID,点击左边红色框,会有一个Primary key

在这里插入图片描述

之后就会显示PK(上面单词缩写),这个就是它的主关键字

在这里插入图片描述

2.3 修改数据类型

比如选中SID,之后右边栏可以找到对应的type,进行反复修改

在这里插入图片描述

填写完左边也会对应显示

在这里插入图片描述

2.4 DDL生成数据库

上方任务栏点击tools—>Extensin Manager

搜索searchDDL 下载(可能下载失败,原因、、、、我的是多次打开关闭下载然后下好了)

在这里插入图片描述

下好之后,tools中就会多一个DDL,选择generate code,然后这个是可以这个图转换成SQL脚本

(下图中选对位置)

在这里插入图片描述

选好位置后,ok,保存到某个文件夹

在这里插入图片描述

打开这个文件(此处123),打开方式选择写字板

在这里插入图片描述

这个里面就有create table ,就是SQL语句里面的叫表的生成的这个代码,也就换句话说,我不需要用我们的可视化工具一个个去加字段。用了这个东西就很快,你把这段代码复制到那个工具里面运行,就可以表现出来。

3 StarUML中生成Java代码

eg 先作两个类图,然后可以做出继承关系(图中:子类指向父类)

在这里插入图片描述

添加一些数据ADD—>attribute,改名字name

ADD—>operation,改名字add

还是像刚刚下载DDL一样,下载Java (如果tools里面没有显示Java,重新打开软件就有了)

tools—>java—>generate code

之后在保存文件夹中

在这里插入图片描述

打开方式可以用写字板打开,就会显示

在这里插入图片描述

总结:这个工具可以帮助我们写程序

但以上只是一些简单的基本实用操作,可以继续学习

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 11:16:56  更:2022-02-26 11:20:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 12:08:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码