我有一个要求,我想使用spring集成,但不想使用spring boot从sftp服务器下载文件。我在这里使用jcraft库。希望使用spring集成库。
public void downloadFileFromSftpServer () {
String hostname = "XXX";
String username = "XXX";
String password = "XXX";
String copyFrom = "XXX";
String copyTo = "XXX";
JSch jsch = new JSch();
Session session;
System.out.println("Trying to connect.....");
try {
session = jsch.getSession(username, hostname, 22);
session.setConfig("StrictHostKeyChecking", "no");
session.setPassword(password);
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
System.out.println ("Connection successful.");
ChannelSftp sftpChannel = (ChannelSftp) channel;
Vector <ChannelSftp.LsEntry> vector = (Vector<ChannelSftp.LsEntry>) sftpChannel.ls(copyFrom);
ChannelSftp.LsEntry list = vector.get(0);
System.out.println(list.getFileName());
String oldestFile =list.getFilename();
sftpChannel.get(copyFrom+oldestFile, copyTo);
}
请参阅Spring集成文档。它也使用jsch。
它不需要Spring Boot,可以在任何Java/JVM应用程序中使用;Spring集成比Spring Boot存在的时间要长得多。
我有spring批处理设置(远程分区),它从文件中读取项目并处理它们。 null 我指的是这个测试用例 https://github.com/spring-projects/spring-integration/blob/master/spring-integration-sftp/src/test/Java/org/springframework/integration/sftp/outboun
问题内容: 我正在使用jsch从服务器下载文件,下面是我的代码。 com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.java:2629) at com.jcraft.jsch.ChannelSftp._get(ChannelSftp.java:977) at com.jcraft.jsch.ChannelSftp.get(Channe
我当前的项目是基于Spring集成的。我正在使用spring Boot开发这个项目。 我的目标是使用Spring Integr来完成以下任务。 > 连接到SFTP 检查是否在本地特定文件夹中创建了目录 检查特定于(CSV的文件的合格文件扩展名 将所有内容从SFTP远程目录下载到本地目录 逐行读取本地目录中的文件,并提取特定的列信息。 你能给我一些建议吗? 我怎样才能得到换乘开始时间?注意:我必须将
问题内容: 我想编写连接到我的大学SFTP服务器的脚本,并通过练习下载最新文件。到目前为止,我已经从Paramiko示例中更改了一些代码,但是我不知道如何下载最新文件。 这是我的代码: 问题答案: 使用而不是来获得具有属性(包括文件时间戳记)的列表。 然后,找到具有最大属性的文件条目。 代码如下:
我需要在SI中构建一个应用程序,它读取一个输入目录,该目录可能包含1000个文件,并将它们复制到远程服务器,例如10个服务器,处理器实例将在其中接收它们进行处理。文件的移动应该是循环方式,以便在处理它们时不会给任何服务器带来额外的负担。再详细一点——假设我们在输入目录中有10个文件,那么应用程序应该在服务器1上复制文件1,在服务器2上复制文件2......服务器10上的文件10。 顺序并不重要,重
问题内容: 我需要将文件从服务器下载到桌面。(UBUNTU 10.04)我没有Web访问服务器,只是ssh。 如果有帮助,我的操作系统是Mac OS X和iTerm 2作为终端。 问题答案: 在您的终端中,键入: 相应地替换用户名,主机,远程文件名和本地目录。 如果要访问EC2(或其他需要使用私钥进行身份验证的服务),请使用以下选项: