需要的软件:
linux,nginx,vsftpd
由于练习需要,我要在Linux上搭建一个图片服务器
首先我使用的操作系统是ubuntu server
然后利用命令 apt-get install vsftpd安装ftp服务器
接下来修改它的配置文件,这些网上都有
然后安装完nginx后,设置根目录到相应存放图片文件夹的目录
接下来利用 apache的common-net工具包,利用java进行图片上传并且在浏览器中测试
import java.io.File;
import java.io.FileInputStream;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPSClient;
import org.junit.Test;
public class FTPtest {
@Test
public void testFtp() throws Exception{
//创建FTP客户端
FTPClient client = new FTPClient();
//连接相应的FTP服务器
client.connect("192.168.244.133", 21);
//登录
client.login("ubuntu", "Aa13612374830");
//读取想要上传的文件
FileInputStream fileInputStream = new FileInputStream(new File("D:\\1.jpg"));
//修改上传相应目录
client.changeWorkingDirectory("/home/ubuntu/ftp");
//ftp默认上传格式是文本,所以这里要改为二进制
client.setFileType(FTP.BINARY_FILE_TYPE);
//保存文件,第一个参数为保存后的文件名,第二个为流
client.storeFile("test.jpg", fileInputStream);
//退出
client.logout();
}
}
测试样例: