保存javamail下载的android数据库中的电子邮件附件链接

时间:2015-05-22 11:21:44

标签: java android javamail

我想存储javamail读取的所有电子邮件,以便下次只需要下载最近的电子邮件。所有电子邮件字段看起来都很简单,可以保存在数据库中,但附件除外。实体的bodypart返回inputstream而不是filepath。 我的问题是如何为每封电子邮件保存附件链接,以便只有在用户需要时才能下载。

2 个答案:

答案 0 :(得分:1)

我认为您可以更轻松地实现这一目标:如果有人想要下载附件,只需重新连接到服务器并搜索给定的电子邮件,然后下载附件。因此,您无需在数据库中存储链接或任何内容。搜索邮件可以使用SearchTerms进行搜索,可以找到here

答案 1 :(得分:0)

附件不是文件或链接,除非您将它们转换为文件或链接。

如果您正在为电子邮件编写Web用户界面,您通常希望将所有邮件数据保留在电子邮件服务器中,并在需要时从那里获取。根据您的用户要求,您可能希望复制来自"远程"电子邮件服务器到"本地"电子邮件服务器。

如果您决定将所有这些信息存储在数据库中,您将不得不决定是否将任意大的附件存储为数据库中的BLOB,将它们存储在其他地方(在文件系统中? ),或将它们留在原始电子邮件服务器中并按需获取它们。

您的网络应用程序需要"创建"表示每个附件的URL,当它收到URL请求时,它需要解释它并在您决定存储它的任何位置找到附件。可能有100种方法可以做到这一点,其中可能有90种不安全,所以要小心。