日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人文社科 > 生活经验 >内容正文

生活经验

JAVA实现ftp服务端_用 java 实现FTP SERVER(附源码)

發(fā)布時(shí)間:2023/11/27 生活经验 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JAVA实现ftp服务端_用 java 实现FTP SERVER(附源码) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前面用 PYTHON 實(shí)現(xiàn)了一個(gè) ftp server(參考這里) ,有朋友問(wèn)有沒(méi)有java版本的,其實(shí)說(shuō)白了,ftp 也就是 tcp/ip 協(xié)議的一個(gè)應(yīng)用而已,而tcp/ip 基本都是通過(guò)socket來(lái)傳輸指令或數(shù)據(jù),只要客戶端和服務(wù)端定義好溝通協(xié)議就好了。FTP 是有一套標(biāo)準(zhǔn)的,只要按這套標(biāo)準(zhǔn)去做,就可以實(shí)現(xiàn)一個(gè)FTP服務(wù)器。

下面的程序?qū)崿F(xiàn)了一套簡(jiǎn)單的基于java的ftp server,你可以自己加上自己需要的東西,暫時(shí)這個(gè)FTP SERVER 有如下功能:

1 一個(gè)實(shí)現(xiàn)了的ftp服務(wù)器基本功能程序,服務(wù)器的安全管理代碼還沒(méi)有開(kāi)發(fā),

但該程序已經(jīng)可以適用于網(wǎng)絡(luò)。

2 該ftp服務(wù)器還具有一些管理功能,主要是

針對(duì)用戶管理的,有如下命令:

list、listuser、adduser、deluser、help、?。

list 列出連接用戶信息

listuser 列出所有用戶信息

adduser 新增用戶

deluser 刪除用戶

help 顯示幫助,列出以上指定

“?” 同help功能相同

3 關(guān)于用戶的權(quán)限設(shè)置,還未開(kāi)發(fā),因此所有登陸的用戶的都具有最高權(quán)限,

4 有2個(gè)缺省用戶:

user:jxd password:111

user:good password:public

5 用戶信息在同目錄下的user.cfg中,

注意用戶信息的書(shū)寫(xiě),一個(gè)用戶的信息占一行:

user|password|directory|

6 在eclipse下新建一Java項(xiàng)目 將FtpServer.java放入你所建的項(xiàng)目文件夾下,

并將user.cfg配制文件放入該項(xiàng)目文件夾下。

編譯運(yùn)行FtpServer.java 服務(wù)啟動(dòng)

會(huì)顯示 “ftp server started!”

服務(wù)啟動(dòng) 即可操作指令。(部分操作指令見(jiàn)附件。)

7 客戶端可以通過(guò)本地機(jī)操作系統(tǒng)自帶Ftp客戶端連接 ftp server.

具體操作:

開(kāi)始->運(yùn)行

輸入 "cmd" 調(diào)出控制臺(tái)

在控制臺(tái)輸入 ftp 192.168.1.104

即可連接 。

當(dāng)連接成功會(huì)顯示Connection to 192.168.1.104 //192.168.1.104為服務(wù)器的IP

并提示你當(dāng)前登入服務(wù)器的人數(shù)。

然后輸入你要操作的指令(部分操作指令見(jiàn)附件。)

當(dāng)連接不成功則會(huì)顯示 Unknown host 192.168.1.104

服務(wù)器端的部分指令例子:->adduser

please enter username:jxd

enter password :public

enter the initial directory: d

->list

1:jxd From /192.168.1.104

->listuser

username workdirectory

ruan e:/incoming

wen d:/incoming

->?

adduser :add new user

deluser :delete a user

quit :quit

list :list all user connect to server

listuser : list all account of this server

help :show this help

->help

adduser :add new user

deluser :delete a user

quit :quit

list :list all user connect to server

listuser : list all account of this server

help :show this help

->deluser jxd

User jxd deleted

客戶端指令例子:

ftp> ?

Commands may be abbreviated. Commands are:

! delete literal prompt send

? debug ls put status

append dir mdelete pwd trace

ascii disconnect mdir quit type

bell get mget quote user

binary glob mkdir recv verbose

bye hash mls remotehelp

cd help mput rename

close lcd open rmdir

ftp> !

Microsoft Windows XP [版本 5.1.2600]

(C) 版權(quán)所有 1985-2001 Microsoft Corp.

ftp> DELE dd.txt

250 Request file action ok,complete

ftp> literal

Command line to send

Usage: literal line to send.

ftp> prompt

Interactive mode Off .

ftp> send

Local file d:\22.txt

Remote file d:\incoming\22.txt

ftp> debug

Debugging On .

ftp> ls

---> PORT 192,168,1,104,5,244

200 Command okay

---> NLST

200 Command okay

ftp> put

Local file c:001.txt

Remote file d:\incoming

ftp> get 1222.txt

200 Command okay

150 Opening Binary mode data connection for d:\incoming/1222.txt

226 Transfer complete !

ftp> status

Connected to 192.168.1.104.

Type: ascii; Verbose: On ; Bell: Off ; Prompting: Off ; Globbing: On

Debugging: Off ; Hash mark printing: Off .

ftp> append

Local file c:\

Remote file d:\incoming

ftp> dir

200 Command okay

150 Opening ASCII mode data connection for /bin/ls.

d aa

- FtpServer.java

d mkd

226 Transfer complete !

ftp: 收到 31 字節(jié),用時(shí) 0.00Seconds 31000.00Kbytes/sec.

ftp> mdelete

Remote files ff.txt

200 Command okay Change to ASCII mode

ftp> pwd

257 d:\incoming is current directory.

ftp> ascii

200 Command okay Change to ASCII mode

ftp> mdir

Remote files incoming\ff.txt

Local file c:\001.txt

output to local-file: c:\001.txt?

200 Command okay

226 Transfer complete !

ftp> recv

Remote file ff.txt

Local file C:\Documents and Settings\jxd

200 Command okay

150 Opening Binary mode data connection for d:\incoming/ff.txt

226 Transfer complete !

ftp> verbose

Verbose mode Off .

ftp> bye

C:\Documents and Settings\jxd>

ftp> hash

Hash mark printing On ftp: (2048 bytes/hash mark) .

ftp> mls

Remote files -

Local file -

200 Command okay

200 Command okay

ftp> remotehelp

200 Command okay

ftp> cd

Remote directory d:\incoming

250 Requested file action okay, directory change to d:\incoming

ftp> help

Commands may be abbreviated. Commands are:

! delete literal prompt send

? debug ls put status

append dir mdelete pwd trace

ascii disconnect mdir quit type

bell get mget quote user

binary glob mkdir recv verbose

bye hash mls remotehelp

cd help mput rename

close lcd open rmdir

ftp> mput

Local files c:\001.txt

mput c:\001.txt?

200 Command okay

150 Opening Binary mode data connection for d:\incoming/001.txt

226 Transfer complete !

ftp> rename

From name d:\incoming\001.txt

To name 99.txt

226 Transfer complete !

ftp> Lcd

Local directory now C:\Documents and Settings\jxd.

ftp> open

Already connected to 192.168.1.104, use disconnect first.

ftp> rmdir

Directory name 目錄名字

ftp> close

221 Service closing control connection

源代碼,打包如下,有興趣的可以下載:

點(diǎn)擊下載此文件

總結(jié)

以上是生活随笔為你收集整理的JAVA实现ftp服务端_用 java 实现FTP SERVER(附源码)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。