MultipartFile 文件上传到ftp
时间: 2023-11-09 07:02:04 浏览: 114
springmvc上传文件到FTP
可以使用Apache Commons Net库中的FTPClient类来实现MultipartFile文件上传到FTP服务器的功能。具体步骤如下:
1. 创建FTPClient对象并连接到FTP服务器。
2. 使用login方法登录到FTP服务器。
3. 使用enterLocalPassiveMode方法设置被动模式。
4. 使用setFileType方法设置文件类型为二进制文件。
5. 使用storeFile方法将MultipartFile文件上传到FTP服务器。
6. 使用logout方法注销登录并断开与FTP服务器的连接。
以下是一个示例代码:
```
import org.apache.commons.net.ftp.FTPClient;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
public class FtpUtil {
public static void uploadFile(MultipartFile file, String ftpHost, int ftpPort, String ftpUserName, String ftpPassword, String ftpPath, String fileName) throws IOException {
FTPClient ftpClient = new FTPClient();
try {
ftpClient.connect(ftpHost, ftpPort);
ftpClient.login(ftpUserName, ftpPassword);
ftpClient.enterLocalPassiveMode();
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
InputStream inputStream = file.getInputStream();
boolean done = ftpClient.storeFile(ftpPath + "/" + fileName, inputStream);
inputStream.close();
if (done) {
System.out.println("The file is uploaded successfully.");
} else {
System.out.println("Failed to upload the file.");
}
} finally {
ftpClient.logout();
ftpClient.disconnect();
}
}
}
```
阅读全文