我正在使用 Spring Integration 从 FTP 服务器下载/上传文件。
如何remote-directory="/directory Name"
在 Spring FTP:Inbound-Channel 中动态更改。
我的客户基本上每天都会创建一个文件夹"MM-dd-yy"
,并将所有文件复制到那里。在“FTP:入站通道”中,我没有找到任何配置此模式的方法。我基本上必须在配置中硬编码目录或文件名。我想要的是以编程方式设置路径。因为有时我需要从目录下载所有文件或只下载特定文件。
我发现"remote-directory-expression="'directory'+'/'+ new java.text.SimpleDateFormat('dd-MM-yyyy').format(new java.util.Date())"
可以在 FTP:Outbound-channel 中设置 FTP:InBound-channel 中有没有这样的属性
我的配置是这样的:
<bean id="ftpClientFactory"
class="org.springframework.integration.ftp.session.DefaultFtpSessionFactory">
<property name="host" value="${host}" />
<property name="port" value="${availableServerPort}" />
<property name="username" value="${userid}" />
<property name="password" value="${password}" />
</bean>
<int-ftp:inbound-channel-adapter id="ftpInbound"
cache-sessions="false" channel="ftpChannel" session-factory="ftpClientFactory"
filename-pattern="*.txt" auto-create-local-directory="true"
delete-remote-files="false" remote-directory="/filedirectory"
local-directory="${local_directory}">
<int:poller fixed-rate="1000" />
</int-ftp:inbound-channel-adapter>
<int:channel id="ftpChannel">
<int:queue />
</int:channel>
我没有找到一种方法来完成上述所有项目。
请让我知道如何实现这一目标。