如何将自定义方法添加到 spring 集成 ftp 网关接口?
How to add custom method to spring integration ftp gateway interface?
在 Spring 集成 ftp doc 之后,我已经设法通过 java 配置方式将文件发送到 ftp 服务器:
@MessagingGateway
public interface MyGateway {
@Gateway(requestChannel = "toFtpChannel")
void sendToFtp(File file);
}
ss
public static void main(String[] args) {
ConfigurableApplicationContext context =
new SpringApplicationBuilder(FtpJavaApplication.class)
.web(false)
.run(args);
MyGateway gateway = context.getBean(MyGateway.class);
// sending file to ftp server
gateway.sendToFtp(new File("/foo/bar.txt"));
}
在我看来,上面的代码使用自定义方法 'sendToFtp()' 将文件发送到目标 ftp 服务器。我的问题是如何在MyGateway接口中添加其他方法来实现操作?
ls (list files)
get (retrieve file)
mget (retrieve file(s))
rm (remove file(s))
mv (move/rename file)
put (send file)
mput (send multiple files)
每个FTP网关只能处理一种方法。
你需要一一申报,然后...
@MessagingGateway
public interface MyGateway {
@Gateway(requestChannel = "toFtpGetChannel")
void sendToFtpGet(...);
@Gateway(requestChannel = "toFtpPutChannel")
void sendToFtpPut(...);
...
}
在 Spring 集成 ftp doc 之后,我已经设法通过 java 配置方式将文件发送到 ftp 服务器:
@MessagingGateway
public interface MyGateway {
@Gateway(requestChannel = "toFtpChannel")
void sendToFtp(File file);
}
ss
public static void main(String[] args) {
ConfigurableApplicationContext context =
new SpringApplicationBuilder(FtpJavaApplication.class)
.web(false)
.run(args);
MyGateway gateway = context.getBean(MyGateway.class);
// sending file to ftp server
gateway.sendToFtp(new File("/foo/bar.txt"));
}
在我看来,上面的代码使用自定义方法 'sendToFtp()' 将文件发送到目标 ftp 服务器。我的问题是如何在MyGateway接口中添加其他方法来实现操作?
ls (list files)
get (retrieve file)
mget (retrieve file(s))
rm (remove file(s))
mv (move/rename file)
put (send file)
mput (send multiple files)
每个FTP网关只能处理一种方法。
你需要一一申报,然后...
@MessagingGateway
public interface MyGateway {
@Gateway(requestChannel = "toFtpGetChannel")
void sendToFtpGet(...);
@Gateway(requestChannel = "toFtpPutChannel")
void sendToFtpPut(...);
...
}