提前下载好VMware Workstation Pro
第一部分:


统一认证登录:
采用JWT(JSON Web Token)实现令牌认证,用户登录成功后生成 JWT 令牌,后续请求携带令牌进行身份验证,保障系统安全。后期项目优化部分结合 SaToken 进行权限校验,确保只有合法用户才能访问系统资源。
数据集管理:
完成大文件上传

算子管理:

模型管理:

权限管理:
用户--角色--权限

用户和角色之间的关系?建立一张桥表
多对多
角色和权限之间的关系?建立一张桥表
多对多
多对多,外键设置在哪一方都不合适,所以要创建桥表
系统管理:

后期不会改变的常量等,但会使用到,使用数据字典管理,用到哪个去字典中查即可
日志导出:easy excel 小组件 中间件
项目架构:
1.技术架构
本系统基于 Jdk17 (默认jdk版本)和 SpringBoot3 搭建核心框架,利用 MyBatisPlus(编码更方便 Mybatis--Flex:一个优雅的mybatis增强框架,可操作多表, mybatis--Plus:简化开发,只做增强不做改变,提高效率,不需要手动写SQL语句(利用id查询数据的代码--针对单表操作) )实现对 MySQL 数据库操作的便捷化,简化数据访问层的开发

经常用数据库操作io数据的,太繁琐,内存有限,使用redis非关系型数据库,基于内存操作,速度快,springcache实现缓存数据和MySQL数据一致性
RabbitMQ(中间件)跨语言,对于python端和java端数据交互,双十一商品发短信给用户,将消息先丢到消息队列(先进先出)
不用if判断是否为空,使用JSR303参数校验,也就是添加一个注解就能实现大量用if判断的语句
MapStruct实现beanCopy拷贝,像之前的物联网项目环境湿度温度的拷贝
A B 相同类型的对象
将A的完整属性拷贝给B,B调用set,使用get 获取A的属性
例:bean下的user的属性name和其他属性,需要vo对象拿取需要的部分,不需要vo.setname(user.getName)繁琐的导入,直接通过MapStruct进行映射
Knife4j:接口测试,不再用postman,直接在代码中生成web网页进行测试,自动识别请求方式
系统架构分层:


第二部分
1.SQL导入
引入sql表,navicat右键运行SQL文件,找到pai.sql,进行导入
或者右键--新建数据库,数据库名,字符集utf8mb4,右键--运行SQL文件

第三部分
环境搭建
1.win+r:查看git版本号 git --version
2.在idea打开plant--ai--identify项目
3.close当前idea项目,open刚才解压的plant--ai--identify项目

sdks中也是17

file--settings--maven

settings--Plugins--下载Gitee--Version Controller--Gitee--添加账号
Gitee插件下载不下来,直接把插件压缩包去官网找打开

创建Git仓库

点击test确保是自己git地址
删除项目目录中的.git .idea文件自己手动初始化,关闭项目重新打开,删除Git中的与项目重复的仓库,file--VSC --share project gitee--commit
第四部分:
目录结构
项⽬采⽤三层架构(表⽰层、业务逻辑层、数据访问层),项⽬对应的⽬录结构如下

vo对象:前端要什么,后端就封装什么,前端既想要栏圈又想要栏舍信息,就在后端封装一个vo对象
dto:从前端拿到后封装一个dto对象


第五部分:
配置文件


开启VMware虚拟机(linux虚拟机)
1.打开VMware,右键,打开Ubuntu 20.04.ova这个文件,稍后安装操作系统,linux,版本Ubuntu64位,虚拟机名称:Ubuntu 20.04

处理器:2~4个(4)
处理器内核数量:1~2个(2)
2:1的关系
内存2个G
io控制类型默认选项
创建新的虚拟磁盘,20个G
开启虚拟机(虚拟机ifconfig和物理机ipconfig处于同一个网段ipv4上)
用户briup
密码
ifconfig
出现inet:ipv4地址
操作虚拟机的工具 用来连接虚拟机----------------------MobaXterm_Personal_23.2.exe
将以下两个文件存放在自己创建的文件夹中


在这个程序中输入命令实现动态连接虚拟机
右键exe发送到桌面创建快捷方式
双击打开这个程序
点击Session--ssh--remote host:ipv4地址--username:briup--ok--accept
win+r:ping ipv4地址 能ping通就说明连接虚拟机成功了
虚拟机ubuntu不用了可以挂起,再次用到重新开启然后依次输入密码,ifconfig
去连接虚拟机的程序MobaXterm_Personal_23.2中输入密码进去这样就连接到虚拟机了
ls 查看当前目录下的文件
cd / 根目录
cd ~ 家目录

什么是Docker?
开发完项目,会将项目部署在虚拟机
以后端为例,需要在虚拟机安装jdk环境,通过java--jar命令启动jar包,启动后端,这是之前的操作步骤
前端:安装node环境,或者直接安装nginx环境,将前端项目打包生成成html,css和js构成的静态页面,部署在nginx环境,将ip改成服务器地址,这样前端就能跑起来了,这是之前的操作步骤
繁琐,需要自己手动配置
docker:将环境提前打包好,想要用环境直接使用docker镜像,项目会直接跑起来,相当于将项目放在小型的虚拟机上运行



docker镜像:就是把所用到的依赖,环境,库等存放在docker镜像中
web项目启动要有web容器
容器:docker镜像启动也要有容器,类似于小型的linux机器,容器与虚拟机(宿主机)是共享操作系统内核的
镜像是放在容器中运行的
仓库:存放镜像的地方
最终运行的是docker容器
Docker的优势?


安装Docker
sudo:提升到管理员权限
apt:Ubuntu里下载东西


1.更新系统软件包
sudo apt update
2.安装依赖包
sudo apt install apt-transport-https ca-certificates curl software-properties-common
3.添加官方密钥(图片里的命令失效了,用这个)
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4.添加docker阿里稳定版软件源(密钥和验证一行代码就可以搞定)
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
5.再次更新软件包
sudo apt update
6.安装默认最新版
sudo apt install docker-ce docker-ce-cli containerd.io
7.测试 安装好后默认启动
sudo docker run hello-world
出现这个问题要更换镜像源

将文件拖到家目录


家目录
ll查看家目录中所有文件

ls查看是否存在json文件
有就执行下一条命令
8.从home broup拷贝到etc docker下面
sudo cp /home/briup/daemon.json /etc/docker/daemon.json
9.重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
10.再次测试,默认自动启动
sudo docker run hello-world
如果命令行有Hello from Docker!说明docker安装成功
11.查看docker有哪些镜像(可以看到hello world镜像)
sudo docker images
由于每条命令基本都要切换到管理员所以干脆用su切换到管理员模式,然后再输入这些命令
密码用自己的




12.列出自己的用户组,确认自己不在docker组中
groups
13.没有则新增docker组
sudo groupadd docker
14.把此用户briup添加到docker组中
sudo gpasswd -a ${USER} docker
15.更新
newgrp docker
16.重启docker
sudo service docker restart
17.开机自启docker
sudo systemctl enable docker
18.查看状态
sudo systemctl status docker
有绿色小图标就代表正在运行
ctrl+c退出
Docker安装完成
常见命令


可以看到有一个mysql容器
容器id:aa250a9514fb

不写id也可
docker update --restart=always mysql
这样mysql就实现了开机自启
案例展示


宿主机的80端口映射容器的80端口
现在可以通过本地浏览器访问nginx
192.168.......:80
这样nginx就运行成功了

ps查看容器运行状态
使用指定格式,输出更优雅



查看容器内目录


回到宿主机:exit

再次查看列表只有这两个文件

创建文件:vi 1.txt
创建好之后是只读模式,按住i可以往1.txt插入内容,hello docker!
退出:esc
shift+: 然后输入:wq退出去,这样文件内容就保存下来了
再次输入命令:vi 1.txt可以进去看到刚才输进去的内容

我们现在就在家目录下直接输入:vi .bashrc

输入i进入插入模式,找到alias继续写命令就行


对这部分长的起别名就行以后直接输入dps和dis就能查看目录和镜像
esc退出
shift+:wq保存文件并退出
现在修改了别名,我们要让bashrc生效

我们已经在家目录下了,直接输入命令:

生效后


到这里关于docker你已经入门啦!