广告位 后台主题配置管理 |
广告位 后台主题配置管理 |
今天给各位分享ftp服务器下载jsp的知识,其中也会对ftp服务器下载速度进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
直接使用ftp软件即可,简单方便快捷明了。但是ftp软件的种类也是很多的。像你这样只需要下载文件的话,有一款软件还是很适合你的。好像是叫IIS7服务器管理工具吧。这款工具有一个非常优秀的功能,就是定时上传下载功能。它可以让你少了很多的后顾之忧。下面是下载文件的教程图片:
常用的ftp服务器有server-U、FileZilla、iis7服务器管理工具ftp客户端工具等,其中iis7服务器管理工具最为方便,不仅能批量管理ftp站点,还能定时上传和下载文件。此外,iis7服务器管理工具还能批量管理windows、linux和vnc,可谓是非常的方便好用。
IIS7服务器管理工具它的优秀之处于能够批量管理Winduws、Linux系列系统和VNC,能大大提高站长、运维工作、程序员等需要大量服务器或者电脑从业者的工作效率,整体来说非常的实用。
form表单提交文件,建议用smartupload上传,暂存在web服务器目录下,然后稍微一下下面的代码,ftp上传后,删除暂存文件,ok
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.StringTokenizer;
import org.apache.commons.net.;
import org.apache.commons.net.;
import org.apache.commons.net.;
import org.apache.log4j.Logger;
/**
* Ftp 服务类,对Apache的commons.net.ftp进行了包装br
* 依赖库文件:commons-net-1.4.1.jar
*
* @version 1.0 2008-02-18
* @author huchao@jbsoft
*/
public class FtpService {
public FtpService(String serverAddr, String lsenport, String userName,
String pswd) {
this.ftpServerAddress = serverAddr;
this.port = Integer.parseInt(lsenport);
this.user = userName;
this.password = pswd;
}
/**
* FTP 服务器地址
*/
private String ftpServerAddress = null;
/**
* FTP 服务端口
*/
private int port = 21;
/**
* FTP 用户名
*/
private String user = null;
/**
* FTP 密码
*/
private String password = null;
/**
* FTP 数据传输超时时间
*/
private int timeout = 0;
/**
* 异常:登录失败
*/
private final I2HFException EXCEPTION_LOGIN = new I2HFException("COR101",
"FTP服务器登录失败");
/**
* 异常:文件传输失败
*/
private final I2HFException EXCEPTION_FILE_TRANSFER = new I2HFException(
"COR010", "FTP文件传输失败");
/**
* 异常:IO异常
*/
private final I2HFException EXCEPTION_GENERAL = new I2HFException("COR010",
"FTP IO 异常");
private static final Logger logger = Logger.getLogger(FtpService.class);
/**
* 初始化FTP连接,并进行用户登录
*
* @return FTPClient
* @throws I2HFException
*/
public FTPClient initConnection() throws I2HFException {
FTPClient ftp = new FTPClient();
try {
// 连接到FTP
(ftpServerAddress, port);
int reply = ;
if (!FTPReply.isPositiveCompletion(reply)) {
;
throw new I2HFException("COR010", "FTP服务器连接失败");
}
// 登录
if (!(user, password)) {
throw EXCEPTION_LOGIN;
}
// 传输模式使用passive
;
// 设置数据传输超时时间
;
logger.info("FTP服务器[" + ftpServerAddress + " : " + port + "]登录成功");
} catch (I2HFException te) {
logger.info(te.errorMessage, te);
throw te;
} catch (IOException ioe) {
logger.info(ioe.getMessage(), ioe);
throw EXCEPTION_LOGIN;
}
return ftp;
}
/**
* 设置传输方式
*
* @param ftp
* @param binaryFile
* true:二进制/false:ASCII
* @throws I2HFException
*/
public void setTransferMode(FTPClient ftp, boolean binaryFile)
throws I2HFException {
try {
if (binaryFile) {
;
logger.info("FTP文件传输方式为:二进制");
} else {
;
logger.info("FTP文件传输方式为:ASCII");
}
} catch (IOException ex) {
logger.info(ex.getMessage(), ex);
throw EXCEPTION_GENERAL;
}
}
/**
* 在当前工作目录下建立多级目录结构
*
* @param ftp
* @param dir
* @throws I2HFException
*/
public void makeMultiDirectory(FTPClient ftp, String dir)
throws I2HFException {
try {
StringBuffer fullDirectory = new StringBuffer();
StringTokenizer toke = new StringTokenizer(dir, "/");
while (toke.hasMoreElements()) {
String currentDirectory = (String) toke.nextElement();
fullDirectory.append(currentDirectory);
(fullDirectory.toString());
if (toke.hasMoreElements()) {
fullDirectory.append('/');
}
}
} catch (IOException ex) {
logger.info(ex.getMessage(), ex);
throw EXCEPTION_GENERAL;
}
}
/**
* 更改服务器当前路径
*
* @param ftp
* @param dir
* @throws I2HFException
*/
public void changeWorkingDirectory(FTPClient ftp, String dir)
throws I2HFException {
try {
if (!) {
throw new I2HFException("COR010", "目录[ " + dir + "]进入失败");
}
} catch (I2HFException tfe) {
logger.info(tfe.errorMessage, tfe);
throw tfe;
} catch (IOException ioe) {
logger.info(ioe.getMessage(), ioe);
throw EXCEPTION_GENERAL;
}
}
/**
* 上传文件到FTP服务器
*
* @param ftp
* @param localFilePathName
* @param remoteFilePathName
* @throws I2HFException
*/
public void uploadFile(FTPClient ftp, String localFilePathName,
String remoteFilePathName) throws I2HFException {
InputStream input = null;
try {
input = new FileInputStream(localFilePathName);
boolean result = (remoteFilePathName, input);
if (!result) {
// 文件上传失败
throw EXCEPTION_FILE_TRANSFER;
}
logger.info("文件成功上传到FTP服务器");
} catch (I2HFException tfe) {
logger.info(tfe.getMessage(), tfe);
throw tfe;
} catch (IOException ioe) {
logger.info(ioe.getMessage(), ioe);
throw EXCEPTION_FILE_TRANSFER;
} finally {
try {
if (input != null) {
input.close();
}
} catch (IOException ex) {
logger.info("FTP对象关闭异常", ex);
}
}
}
/**
* 下载文件到本地
*
* @param ftp
* @param remoteFilePathName
* @param localFilePathName
* @throws I2HFException
*/
public void downloadFile(FTPClient ftp, String remoteFilePathName,
String localFilePathName) throws I2HFException {
boolean downloadResult = false;
OutputStream output = null;
try {
output = new FileOutputStream(localFilePathName);
downloadResult = (remoteFilePathName, output);
if (!downloadResult) {
// 如果是文件不存在将异常抛出
throw new I2HFException("COR011", "文件不存在");
}
logger.info("文件成功从FTP服务器下载");
} catch (I2HFException tfe) {
logger.error(tfe.getMessage(), tfe);
throw tfe;
} catch (IOException ex) {
logger.error(ex.getMessage(), ex);
throw EXCEPTION_FILE_TRANSFER;
} finally {
try {
if (output != null) {
output.close();
}
if (!downloadResult) {
new File(localFilePathName).delete();
}
} catch (IOException ex) {
logger.error("FTP对象关闭异常", ex);
}
}
}
/**
* Method setFtpServerAddress.
*
* @param ftpServerAddress
* String
*/
public void setFtpServerAddress(String ftpServerAddress) {
this.ftpServerAddress = ftpServerAddress;
}
/**
* Method setUser.
*
* @param user
* String
*/
public void setUser(String user) {
this.user = user;
}
/**
* Method setPassword.
*
* @param password
* String
*/
public void setPassword(String password) {
this.password = password;
}
/**
* Method setTimeout.
*
* @param timeout
* String
*/
public void setTimeout(String timeout) {
try {
this.timeout = Integer.parseInt(timeout);
} catch (NumberFormatException ex) {
// 默认超时时间500毫秒
this.timeout = 500;
}
}
/**
* Method setPort.
*
* @param port
* String
*/
public void setPort(String port) {
try {
this.port = Integer.parseInt(port);
} catch (NumberFormatException ex) {
// 默认端口21
this.port = 21;
}
}
}
=====================================
jsp上传部分
===================================
form method="post" name="uploadform" id="uploadform" action="upload" ENCTYPE="multipart/form-data"
input type="hidden" name="service" value="com.jbsoft.i2hf.corpor.services.CstBatchBizServices.exclUpload"/
table cellspacing="0" cellpadding="0"
tr
td width="20%" align="right"上传本地文件:/td
td width="80%"input class="qnphp9cf5-33a2-20ce-3221 " style="width:300px" type="file" width="300px" name="exclname" id="exclname"//td
/tr
/table
/form
============================================
上传的servlet用的是smartupload
,部分代码可以参考一下:
==========================================
SmartUpload su = new SmartUpload();
su.setCharset("UTF-8");
su.initialize(getServletConfig(), request, response);
su.setMaxFileSize(10240000);
su.setTotalMaxFileSize(102400000);
su.setAllowedFilesList("xls");
su.upload();
===========================================
代码里面有一些客户的信息,不能全部给你哈
按住shift然后右键单击文件,就会出现打开方式...选项,用windows的记事本打开(就是打开txt文件的那种),看看有没有内容
关于ftp服务器下载jsp和ftp服务器下载速度的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
广告位 后台主题配置管理 |
广告位 后台主题配置管理 |