Linux搭建FTP和Java文件上傳

安裝 vsftpd

yum -y install vsftpd

添加 vsftpd 用戶

useradd ftpuser

設置 vsftpd密碼

passwd ftpuser

在ftpuser用戶目錄下創建一個上傳目錄

mkdir /home/ftpuser/html

在這裏插入代碼片

配置 ,禁止匿名用戶登錄,配置文件 /etc/vsftpd/ vsftpd.conf
找到下面的2項進行修改

local_root=/home/ftpuser/html
nonymous_enable=NO

修改目錄權限

chmod 777 /home/ftpuser/html

啓動Vsftpd

service vsftpd restart

Java文件上傳

導入依賴:

<dependency>
	<groupId>commons-net</groupId>
	<artifactId>commons-net</artifactId>
	<version>3.6</version>
</dependency>

這是我們的文件上傳的IP和前面設置的用戶

@Test
	public void testFtpUpload(){
		FTPClient ftpClient = new FTPClient();
		FileInputStream fis = null;
		try {
			//服務器IP
			ftpClient.connect("10.0.0.3");
			//配置的ftp用戶密碼
			ftpClient.login("ftpuser", "123456");
  			//本地文件
			File srcFile = new File("C:\\Users\\Administrator\\Desktop\\圖片素材\\111.jpg");
			fis = new FileInputStream(srcFile);
			//設置上傳目錄
			ftpClient.setBufferSize(1024);
			ftpClient.setControlEncoding("GBK");
			//設置文件類型(二進制)

			ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
			ftpClient.storeFile("333.jpg", fis);
		} catch (IOException e) {
			e.printStackTrace();
			throw new RuntimeException("FTP客戶端出錯!", e);
		} finally {
			IOUtils.closeQuietly(fis);
			try {
				ftpClient.disconnect();
			} catch (IOException e) {
				e.printStackTrace();
				throw new RuntimeException("關閉FTP連接發生異常!", e);
			}
		}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章