什么是JAF?它的目的是什么?

46

我不明白JAF(Java激活框架)的目的是什么。请简单地向我解释一下,或者指向相关信息。

Java Mail API正在使用JAF。看起来JAF用于查找对象的支持数据类型。但我理解困难。

请教我吧!

3个回答

56

JavaBeans Activation Framework(JAF)是一个库,用于抽象处理文件的应用程序和操作系统之间特定于操作系统的绑定/映射。这可以基于 MIME 类型和/或文件扩展名。它实际上就是这些。

打开 Windows 资源管理器并右键单击文件。可能会出现各种操作(例如打开、编辑、播放)。与文件关联的操作与 Windows 上的文件扩展名相关联。 JAF 是其便携式版本。它主要用于桌面应用程序与计算机上可用于处理文件的任何程序进行交互。


感谢您的解释;有时理解Oracle文档需要进行脑力体操。 - Mushy

12
这其实是 JavaBeans 激活框架,我认为文档讲解得很清楚:
使用Java技术的开发人员可以利用JavaBeans激活框架标准扩展来利用标准服务来确定任意数据的类型,封装对其的访问,发现可用的操作,并实例化适当的bean来执行这些操作。例如,如果浏览器获取了JPEG图像,则该框架将使浏览器能够将该数据流识别为JPEG图像,并从该类型中定位并实例化一个对象,该对象可以操纵或查看该图像。
这段话有什么不清楚的地方吗?

你的意思是,如果数据流来自JPEG,JAF会形成一个JPEG类型的对象来操作它。所以在Java邮件API中,它也依赖于JAF来实现相同的目的?谢谢。 - Manoj
@Manoj,没错 - JAF 可以内部使用“任意数据块”的内容类型、文件扩展名或其他信息来推断类型并实例化适当类型的 Bean 以操作数据。 - Alex Martelli
2
我认为有时Oracle文档提到高度抽象的概念,而作为开发人员,我们习惯于处理具体的语义,这需要第二次或第三次阅读。即便如此,还是要求有人用最简单的术语来解释它。 - Mushy
似乎像是Tika。 - Travis Spencer

5

我认为这应该是对原始问题的注释。 - Jaime Hablutzel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接