我从Jsch Channel SFTP获得了输入流,如下所示。
ChannelSftp channelSftp = (ChannelSftp) channel;
InputStream input = channelsftp.get(unixPath); // unixPath is path to my file which is on SFTP server
我必须将unixPath
中的文件附加到Spring Java Mail附件中。但是当我看到Spring JavaMail的API addAttachment()
方法时,它只需要InputStreamSource
或Datasource
。我的问题是我无法从从SFTP通道获得的inputStream获得InputStreamSource
或Datasource
。
如何从上面的InputStream
中获取InputStreamSource
或Datasource
?
2条答案
按热度按时间velaa5lx1#
在文档中,
InputStreamSource
是一个接口。它的实现之一是InputStreamResource
,它有一个接受InputStream
的构造函数。以下是它的JavaDoc。您应该能够这样设置您的呼叫:
voj3qocg2#
我在VPS上托管了一个在Docker中的Spring Boot应用程序。此代码将在本地系统上运行,同时在IDE中进行开发**,并且如果.jar文件 Package 在Docker映像中**:
案例示例:
我喜欢得到一份PDF文件。PDF文档位于
static/docs/not-a-porn.PDF
。1)连接
ResourceLoader
类。2.)通过
pathOfAttachment
(String
)创建资源。Resource
是扩展InputStreamSource
的接口,如您在文档中所见:public interface Resource extends InputStreamSource
来源:
org.springframework.core.io
Link to documentation (click here)