java向SFTP服务器上传文件,如何判断服务器上的文件夹是否存在?

java向SFTP服务器上传文件,如何判断服务器上的文件夹是否存在?,第1张

如果你的JAVA部署的tomcat,就是你要查找文件服务器,那就用:

File file = new File("文件路径")。

如果你本地的JAVA想要访问远程的一个服务器的文件是否存在,就得用如下方法:

URL url = new URL(“文件路径:可以是本地服务器的路径,也可以是远程服务器的路径”)

HttpURLConnection urlcon = (HttpURLConnection) urlopenConnection();

//message = urlcongetHeaderField(0);

//文件存在‘HTTP/11 200 OK’ 文件不存在 ‘HTTP/11 404 Not Found’

Long TotalSize=LongparseLong(urlcongetHeaderField("Content-Length"));  

if (TotalSize>0){

return true;

}else{

return false;

}

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

默认的sublime text是没有这个sftp连接功能的,这只是一个文本编辑器,相当于windows下的txt,所以要先装上插件:

安装Sublime Text 2插件的方法:

1直接安装

安装Sublime text 2插件很方便http://wwwuuudowncom/,可以直接下载安装包解压缩到Packages目录

(菜单->preferences->packages)。

2使用Package Control组件安装,下载这个方法要先安装Package Control,我就是用这个方法安装的。

先安装package control组件,然后直接在线安装。

1) 按Ctrl+`调出console, 粘贴以下代码到底部命令行并回车:

import urllib2,os;pf='Package Controlsublime-package';ipp=sublimeinstalled_packages_path();osmakedirs(ipp) if not ospathexists(ipp) else None;open(ospathjoin(ipp,pf),'wb')write(urllib2urlopen('http://sublimewbondnet/'+pfreplace(' ','%20'))read())

2)重启Sublime Text 2。

如果在Perferences->package settings中看到package control这一项,则安装成功。

3)用Package Control安装插件的方法:

按下Ctrl+Shift+P调出命令面板

输入install选择下面提示的 Install Package选项并回车,然后输入SFTP,下拉列表中会出现一些相关的插件,选中sftp进行安装就行了,装好后还需配置如下:选菜单栏中的File->SFTP/FTP->Set up Server,然后出现一个配置窗口如下,

连接成功的话会有在sublime的底部如下显示,这样链接成功了。。。

按下Ctrl+Shift+P调出命令面板

选中sftp进行安装就行了,装好后还需配置如下:

选菜单栏中的File->SFTP/FTP->Set up Server,然后出现一个配置窗口如下,

注意是ftp连接的话,要将sftp改成ftp,然后设置主机名,密码,端口就行了,ftp的端口是21。

连接成功的话会有在sublime的底部如下显示,这样链接成功了。。。

下面介绍将一个项目上传:

在工具栏中点击Project - Add Folder to Project,选择项目的文件夹。这样左侧会出现project文件夹,右键project,选择FTPSync - Setup FTPSync in this folder,之后会出来一个配置文件sftp-configjson,对配置文件进行修改,代码如下:

[php] view plain copy

{

// The tab key will cycle through the settings when first created

// Visit http://wbondnet/sublime_packages/sftp/settings for help

// sftp, ftp or ftps

"type": "ftp",

"save_before_upload": true,

"upload_on_save": false,

"sync_down_on_open": false,

"sync_skip_deletes": false,

"confirm_downloads": false,

"confirm_sync": true,

"confirm_overwrite_newer": false,

"host": "wangshangyoucom",

"user": "",

"password": "",

//"port": "22",

"remote_path": "/",

"ignore_regexes": [

"\\sublime-(project|workspace)", "sftp-config(-alt\\d)\\json",

"sftp-settings\\json", "/venv/", "\\svn", "\\hg", "\\git",

"\\bzr", "_darcs", "CVS", "\\DS_Store", "Thumbs\\db", "desktop\\ini"

],

//"file_permissions": "664",

//"dir_permissions": "775",

//"extra_list_connections": 0,

"connect_timeout": 30,

//"keepalive": 120,

//"ftp_passive_mode": true,

//"ssh_key_file": "~/ssh/id_rsa",

//"sftp_flags": ["-F", "/path/to/ssh_config"],

//"preserve_modification_times": false,

//"remote_time_offset_in_hours": 0,

//"remote_encoding": "utf-8",

//"remote_locale": "C",

}

在project目录结构中选择文件右键上传,或者在命令输入框中输入命令。

这样就完成了。

主要快捷键列表:

Ctrl+L 选择整行(按住-继续选择下行)

Ctrl+KK 从光标处删除至行尾

Ctrl+Shift+K 删除整行

Ctrl+Shift+D 复制光标所在整行,插入在该行之前

Ctrl+J 合并行(已选择需要合并的多行时)

Ctrl+KU 改为大写

Ctrl+KL 改为小写

Ctrl+D 选词 (按住-继续选择下个相同的字符串)

Ctrl+M 光标移动至括号内开始或结束的位置

Ctrl+Shift+M 选择括号内的内容(按住-继续选择父括号)

Ctrl+/ 注释整行(如已选择内容,同“Ctrl+Shift+/”效果)

Ctrl+Shift+/ 注释已选择内容

Ctrl+Z 撤销

Ctrl+Y 恢复撤销

Ctrl+M 光标跳至对应的括号

Alt+ 闭合当前标签

Ctrl+Shift+A 选择光标位置父标签对儿

Ctrl+Shift+[ 折叠代码

Ctrl+Shift+] 展开代码

Ctrl+KT 折叠属性

Ctrl+K0 展开所有

Ctrl+U 软撤销

Ctrl+T 词互换

Tab 缩进 自动完成

Shift+Tab 去除缩进

Ctrl+Shift+↑ 与上行互换

Ctrl+Shift+↓ 与下行互换

Ctrl+K Backspace 从光标处删除至行首

Ctrl+Enter 光标后插入行

Ctrl+Shift+Enter 光标前插入行

Ctrl+F2 设置书签

F2 下一个书签

Shift+F2 上一个书签

首先要在阿里云ECS上搭建ftp服务器,默认是有vsftpd ,它是 Linux 下的一款小巧轻快、安全易用的 FTP 服务器软件。

用下面命令查看是否安装了vsftpd,阿里云ECS默认是安装好的,如果没有参考网上文章安装。

新建用户ftpuser:

useradd ftpuser -d /home/ftpfile

设置用户密码:

passwd ftpuser

多数教程里面使用的标准的ftp maven依赖:

但是我使用的是阿里云的ECS上安装的ftp,在进行连接的时候他提示协议不正确,需要使用sftp,所以maven依赖换成了:

这里以windows系统和linux系统为例,简单介绍一下如何在这2种系统下搭建ftp服务器,整个过程非常简单,感兴趣的朋友可以自己尝试一下:

windows

windows系统自带有ftp服务器,只需要在控制面板的“程序和功能”模块中开启一下就行,下面我简单介绍一下操作过程:

1首先,打开控制面板,依次点击“程序”->“启用或关闭windows功能”,在弹出的windows功能窗口中勾选“ftp服务器”和“iis管理控制台”,如下,等待程序安装完成:

2接着在搜索栏打开“iis控制器”,右键左侧的“网站”条目,在弹出的功能列表中选择“添加ftp站点”,这时我们就可以直接设置ftp服务器根目录了(也就是需要共享的文件夹),如下:

3然后就是设置ftp服务器ip地址和端口号,这里可以设置为内网ip,也可以设置为外网ip,根据自己需求设置就行,如下:

4接着就是设置访问用户及读写权限,这里可以是匿名用户、指定用户、所有用户、用户组等,如下:

5最后设置完成后,在浏览器输入“ftp://ftp服务器ip地址”就可以直接访问ftp服务器了,如下,所有文件都已列出,可以直接进行下载:

linux

这里需要先安装vsftp这个工具包,然后启动ftp服务,之后就可以直接访问ftp服务器上的文件了,下面我简单介绍一下操作过程:

1首先,安装vsftpd工具包,这个直接在终端输入命令“yuminstall-yvsftpd”就行,或者(“aptinstall-yvsftpd”),如下:

2安装完成后,这里你可以对/etc/vsftpd/vsftpdconf文件进行进行简单配置,设置用户访问策略等,官方文档有详细说明,修改对应参数就行,如下:

3接着就是启动ftp服务,直接运行“systemctlstartvsftpd”命令(或者“servicevsftpdstart”命令)就行,如下,ftp服务已经正常运行:

4最后就可以直接使用sftp或者ftp命令连接ftp服务器了,效果如下,输入用户password,成功验证后就可以直接上传下载文件了:

至此,我们就完成了在windows系统和linux系统下搭建ftp服务器。总的来说,整个过程非常简单,只要你熟悉一下上面的操作过程,很快就能掌握的,当然,你也可以借助现有的ftp软件来搭建ftp服务器,都行,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » java向SFTP服务器上传文件,如何判断服务器上的文件夹是否存在?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情