1,虚拟机及相关说明
1.1 软件下载
URL: https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html
建议: 使用14/15版本
安装步骤: 一路下一步 注意路径 最好不要放到C盘中
1.2.创建虚拟机
参见博客:虚拟机基础操作
方式1:新建虚拟机
方式2:打开虚拟机镜像
1.3.虚拟机初始化
参见博客:虚拟机安装-ip配置
重要步骤:配置网卡ip--登录系统--联通主机--安装linux系统--安装mobatek--远程测试
1.4 mobatek使用初始化
1 下载软件
地址URL: https://mobaxterm.mobatek.net/download.html
2. 创建远程链接
3 linux 系统简介
Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
4.linux系统常用命令
1.查看显示系统信息
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
2.进入和退出目录
cd /home 进入 '/ home' 目录'
cd .. 返回上一级目录
cd ../.. 返回上两级目录
cd 进入个人的主目录
cd ~user1 进入个人的主目录
cd - 返回上次所在的目录
pwd 显示工作路径
3. 查看目录
ls 查看目录中的文件
ls -F 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件
ls *[0-9]* 显示包含数字的文件名和目录名
tree 显示文件和目录由根目录开始的树形结构
lstree 显示文件和目录由根目录开始的树形结构
4.创建与删除
mkdir dir1 创建一个叫做 'dir1' 的目录'
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm -f file1 删除一个叫做 'file1' 的文件'
rmdir dir1 删除一个叫做 'dir1' 的目录'
rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容
rm -rf dir1 dir2 同时删除两个目录及它们的内容
5.移动与复制
mv dir1 new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp dir/* . 复制一个目录下的所有文件到当前工作目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
cp -a dir1 dir2 复制一个目录
2.上传图片代码
2.1业务描述
商品分为(item/itemDesc), 目前只完成商品基本信息的提交即可.其中包括图片的上传和回显
即在目录中为其创建指定的文件夹,并动态拼接图片参数
2,2 前端代码
2,3后端代码
controller层
@RestController
@CrossOrigin
@RequestMapping("/file")
public class FileController {
/**
* 业务: 文件上传入门案例
* URL: http://localhost:8091/file/upload
* 参数: file=[101001010111]
* 返回值: SysResult对象(ImageVO)
* 知识回顾: 字节流/字符流/缓存流 默认的语法复杂
* 高级API: SpringMVC 专门针对与流,开发了一个高级API
*/
@PostMapping("/upload")
public SysResult upload(MultipartFile file) throws IOException {
//1.动态获取文件名称
String fileName = file.getOriginalFilename();
//2.准备文件目录 Linux系统不能识别\
String dirPath = "F:/images";
File dirFile = new File(dirPath);
if(!dirFile.exists()){
//应该创建一个新目录 创建多级目录
dirFile.mkdirs();
}
//3.拼接文件路径
String filePath = "F:/images/" + fileName;
//4.实现文件上传
file.transferTo(new File(filePath));
System.out.println("实现文件上传");
return SysResult.success();
}
}
说明文件上传的步骤如下:
* 1.获取文件上传名称
* 2.准备文件上传的目录
* 3.准备全文件的路径 目录/文件名称
* 4.实现上传
service层
/**需求分析;文件上传完成后,需要返回ImageVO对象
* */
@PostMapping("/upload")
public SysResult upload(MultipartFile file)throws IOException{
ImageVO imageVO=fileService.upload(file);
if(imageVO == null){
return SysResult.fail();
}
return SysResult.success(imageVO);
}
/**需求:实现图片删除
* URL:http://localhost:8091/file/deleteFile
* 参数:virtualPath
* 返回值结果:SysResult*/
@DeleteMapping("/deleteFile")
public SysResult delteFile(String virtualPath){
fileService.delteFile(virtualPath);
return SysResult.success();
}
说明:后端代码定义了文件上传和删除的方法,实现了文件的回流
2.4 代码调试
网络图片地址:http://image.jt.com//2021/08/11/aa2cd960ba374e37956a53507bc879912.jpg
之后切换为磁盘地址:file:///E:/Step03/ready3//2021/08/11/aa2cd960ba374e37956a53507bc879912.jpg
展现效果:
3.项目发布
3.1项目发布的流程图
3.1.2文件上传路径说明
3.1.3文件上传的路径
3.1.4动态获取端口号
4.linux系统化