Springboot使用ftp进行文件上传下载
首先要在阿里云ECS上搭建ftp服务器,默认是有vsftpd ,它是 Linux 下的一款小巧轻快、安全易用的 FTP 服务器软件。
用下面命令查看是否安装了vsftpd,阿里云ECS默认是安装好的,如果没有参考网上文章安装。
新建用户ftpuser:
useradd ftpuser -d /home/ftpfile
设置用户密码:
passwd ftpuser
多数教程里面使用的标准的ftp maven依赖:
但是我使用的是阿里云的ECS上安装的ftp,在进行连接的时候他提示协议不正确,需要使用sftp,所以maven依赖换成了:
SpringBoot + SFTP 实现文件上传与下载实战
SFTP介绍
实战
1. 相关依赖(基于SpringBoot)
2. 相关配置
3. 将application.properties中配置转为一个Bean
4. 将上传下载文件封装成Service
5. 上传文件
6. 下载文件
7. 删除文件
8. 最后
SpringBoot的一个Controller可以同时完成下载文件与返回视图对象两件事吗?
可以啊,下载文件使用流的方式下载,返回视图直接返回就行,如果需要返回文件,那么可以把文件的下载地址返回,或者将文件流返回到前端。