ftp服务的搭建及调用
首先是搭建 ftp server:
下载:http://archive.apache.org/dist/mina/ftpserver/1.0.6/
下载到本地, 如下图:
解压后到D盘 如图:
步聚:
1.修改连接到ftp服务器上的用户配置文件
D:\java\ftp\apache-ftpserver-1.0.6\res\conf\users.properties
2. 修改 ftpd-typical.xml 文件
解释说明:
《1》
max-logins:允许同时登录ftp的用户数;
anon-enabled:是否运行匿名登录;
max-anon-logins:允许同时登录的最大匿名用户数;
max-login-failures:允许登录失败的次数,超过次数则关闭连接;
ogin-failure-delay:一次登录失败后,重新发起登录的间隔,单位毫秒;
《2》encrypt-passwords="true" ---- 定义用户密码为明文
3.以前两步文件配置后,即可在DOS窗口中启动ftp服务器了。
可写成一个批处理文件,点击即可启动ftpserver文件
双击run_ftp文件即可。
此时打开一些ftp client,来访问此搭建的ftp服务器
至此,搭建ftp服务器成功。
java 实现FTP服务器文件的上传和下载
利用Apache commons-net 实现;
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
package com.xwolf.driver.util;import com.xwolf.driver.exception.RunException;import org.apache.commons.net.ftp.FTPClient;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.nio.charset.Charset;/** * Created by Administrator on 2015/9/18. */public class FtpUtil { //用户名 private static final String username ="root"; //密码 private static final String pwd ="root1234"; //主机 private static final String host ="127.0.0.1"; //端口 private static final int port =21; /* *上传文件到ftp * */ public static void upload(FTPClient ftpClient) throws RunException { File file = new File("C:\\Users\\Administrator\\Desktop\\document\\派单OSS报文.xml"); try { FileInputStream fis = new FileInputStream(file); //设置FTP文件目录 ftpClient.changeWorkingDirectory("/weblogic/upload"); //缓冲区 ftpClient.setBufferSize(1024); //字符集 貌似用途不大 ftpClient.setControlEncoding("GBK"); ftpClient.setCharset(Charset.forName("GBK")); //文件类型(二进制文件) ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE); //保存文件到FTP服务器上 防止中文乱码 ftpClient.storeFile(new String("派单OSS报文_0921.xml".getBytes("GBK"),"iso-8859-1"),fis); } catch (Exception e) { throw new RunException("文件上传ftp服务器异常",e); } } /** * 下载文件 * @param ftpClient */ public static void download(FTPClient ftpClient) throws RunException { try { //保存的文件的名称 FileOutputStream ous = new FileOutputStream(new File("E:\\派单报文.xml")); ftpClient.setBufferSize(1024); //设置文件类型(二进制) ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE); //服务器上文件名称 ftpClient.retrieveFile("派单OSS报文_0921.xml",ous); } catch (Exception e) { throw new RunException("文件上传ftp服务器异常",e); } } public static void main(String[] args) throws RunException { FTPClient ftpClient=new FTPClient(); try { //连接FTP ftpClient.connect(host,port); //是否登录成功 boolean login = ftpClient.login(username,pwd); if(login){ download(ftpClient); } } catch (Exception e) { throw new RunException("ftp服务器连接异常",e); } }} |
ftp服务的搭建及调用的更多相关文章
- FTP服务端 FTP服务端搭建教程
FTP服务端搭建教程如下:一.需要准备以下工具:1.微型FTP服务端.2.服务器管理工具二.操作步骤:1.下载微型FTP服务端.(站长工具包可下载:http://zzgjb.iis7.com/ )2. ...
- <Linux下FTP服务的搭建>
默认安装好ftp软件包匿名用户是可以下载的.匿名以后可以上传:anon_upload_enable=YES# getsebool -a | grep ftpallow_ftpd_anon_write ...
- 【沫沫金】使用Serv-U FTP服务,搭建文件服务器
内网文件服务器安装Serv-U FTP 链接: https://pan.baidu.com/s/1G51D1enLqZCUhnprnjAITw 提取码: snah Java Web工程,引入 comm ...
- 关于linux服务器上搭建ftp服务的流程
小龙最近折腾了一个阿里云的服务器,买完了就要开始做那么多那么多的功课,小龙对ssh也是一知半解的状态,做个小笔记,发布下整个ftp服务的搭建过程,大神勿喷:) 一.aliyun Linux(Redha ...
- CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
概述 最近在搞Oracle在Linux系统下集群,针对Linux系统,笔人也是一片空白.Liunx外部文件的传输,避免不了使用FTP服务,所以现在就整理下,CentOS7环境下,FTP服务的搭建.FT ...
- ubuntu 14.04 下FTP服务器的搭建--锁定用户目录,解决vsftpd: refusing to run with writable root inside chroot()
FTP服务器的搭建,我要实现的需求是: 不允许匿名访问,因为我的机器不想让谁都能登录上来,随便获取文件, 需要锁定一个目录,因为在家里,我需要给媳妇下载一些电影 韩剧之类的东西,媳妇会来我机器下载,但 ...
- Ubuntu 14.04 下FTP服务器的搭建
FTP服务器的搭建,我要实现的需求是: 不允许匿名访问,因为我的机器不想让谁都能登录上来,随便获取文件, 需要锁定一个目录,因为在家里,我需要给媳妇下载一些电影 韩剧之类的东西,媳妇会来我机器下载,但 ...
- FTP服务端部署
FTP服务端搭建(本地用户登入:使用本地用户和密码登入)1.文件配置:vsftpd.conf: 主配置文件ftpusers: 指定哪些用户不能访问FTP服务器user_list: 指定的用户是否可以访 ...
- Windows 下开启FTP服务并创建FTP用户
Windows 下开启FTP服务,并创建用户 此教程教你怎么开启 Windows 的 FTP 服务,并创建用于登入 FTP 的用户.教程用到的操作系统是 Windows 7. 一.创建用于登入 FTP ...
随机推荐
- Java ConcurrentHashMap
通过分析Hashtable就知道,synchronized是针对整张Hash表的,即每次锁住整张表让线程独占, ConcurrentHashMap允许多个修改操作并发进行,其关键在于使用了锁分离技术. ...
- SocketServer model_use
#!/usr/bin/env python #-*- coding:utf- -*- import SocketServer class MySocker(SocketServer.BaseReque ...
- CL.exe的 /D 选项, Preprocessor Macro预处理器宏定义
在看"Inside COM"第10章的代码. MAKEFILE里面有几个标记我没看懂. 去网上搜也搜不到. /D_OUTPROC_SERVER_ /DWIN32 /DREGISTE ...
- Oracle Hang Manager
名词术语1.Cross Boundary Hang 交叉边界hang.在12.1.0.1中,hang manager可以检测database和asm之间的hang.2.Deadlock or Clos ...
- Lintcode: Topological Sorting
Given an directed graph, a topological order of the graph nodes is defined as follow: For each direc ...
- Python学习总结7:随机字符串和随机数
Python生成随机数与随机字符串,需要import random模块.random模块最常用的几个函数如下: 1. random.random(a, b) 用于生成一个0到1的随机符点数: 0 &l ...
- c#如实现将一个数字转化为其他进制字符串输出
之前在 os 上看到有人说过 一直想整理 但是一直没时间 后来 从csdn 上 知道了一份 下面内容 来自 (1)http://bbs.csdn.net/topics/60512816 tost ...
- 夺命雷公狗---DEDECMS----4快速入门之栏目页报错之快速解决
我们dedecms是分3级或者3层的,如下图所示: 点击“玄幻小说”后发现出了错,如下图所示: 我们的dedecms是分3层的,他们分别是: 网站首页 网站的栏目页面(多级)--->栏目页面是需 ...
- batch批的概念
批处理(Batch Requests), 批处理简单理解为同时执行的一批SQL处理语句,一个批处理中可能有多个DML.多个存储过程等等.如在SSMS操作,每个'GO'执行前都属于一个批处理. 注意区分 ...
- $.trim()函数
$.trim(str) 返回:string: 参数str :String类型,需要去除两端空白字符的字符串.如果参数str不是字符串类型,该函数将自动将其转为字符串(一般调用其toString()方法 ...