JavaEE中的“Facet”是什么?
-
05-07-2019 - |
题
我不仅想知道什么是Facet,还想知道什么是Facet'在物理层面'(据我所知,它不是一个单独的罐子,而是什么?)?
我也想知道在部署之后它如何影响我的应用程序。我会解释一下真实的例子:
我有2个方面(由IDE创建):Spring Facet和Web Facet(用于jsf)。我将它部署到Tomcat,我的应用程序工作正常。
然后我(通过IDE)添加了一个方面 - JPA Facet。我重新部署了应用程序,它仍然运行良好:)
所以,我只是好奇这是什么,为什么我们需要它呢?
解决方案
这与Java EE无关。这与IDE有关。该术语本身与编程无关。
来自 http://www.thefreedictionary.com/facet
fac· et (fst) n 。
- 其中一个平面抛光表面切割在宝石上或发生 自然地在水晶上。
- 解剖学小而光滑,平坦的表面,如骨头或牙齿。
- 生物学复眼的透镜状视觉单位之一 昆虫。
- 作为主题的众多方面之一。请参阅阶段的同义词。
醇>
这是4。
在这种特定情况下,它只是项目中使用的一个方面,因此IDE可以在生成器,向导,自动包含库等方面拦截它。如果您添加例如 JPA 方面,那么您将获得更多选项与JPA的IDE魔术。
其他提示
正如BalusC所说,这与Java EE无关,但与IDE有关。这允许添加“特征”。以灵活的方式进行项目。
来自 Eclipse用户的IntelliJ IDEA Q& A (因为你提到IDEA):
问:分面—它们的用途是什么?
A:简化项目配置。
Facets封装了对a的支持 各种框架,技术 和语言。例如,要启用 你项目中的春天,你只有 添加相应的方面。所有 库已下载并且 配置,你得到的全部范围 编码协助,重构等 而且,代码模型也是 认可,所以你完全自由 从担心任何配置 的问题。
在大多数情况下,您可以添加更多 与你相同类型的一个方面 项目。例如,你可以拥有 用于部署的多个Web方面 应用程序到不同的服务器,或 几个EJB方面,每个方面都有自己的方面 EJB版本。 (另见项目 配置。)
是的,Eclipse使用“Facets”和“Facets”。太:
AFAIK,NetBeans没有(参见 问:如何为我的项目配置Web框架?)。
Facets是一个Web应用程序框架,它利用服务器端的简单MVC架构和客户端的功能丰富的Javascript组件模型。这两个部分旨在为动态AJAX风格的应用程序无缝集成
如 Eclipse & Intellij 文档,Facets定义特征和要求(特定配置) ,特定于特定框架/技术)。
将facet添加到项目时,该项目被配置为执行特定任务,满足某些要求或具有某些特征。
简介您必须遵循一些结构来实现一些框架/技术。 IDE可以选择实现它,让您的生活更轻松。
详细说明我将直接从Eclipse Documentations中提供一些详细信息。这是 Eclipse特定的。
当 创建项目 您将获得为项目实施方面的选项。例如,EAR facet通过添加部署描述符和设置项目的类路径来设置项目以充当企业应用程序。
要添加已存在的项目 ,请完成以下步骤:
- 在Java™的Project Explorer视图中。 EE透视图,右键单击项目,然后选择“属性”。
- 在“属性”窗口中选择“项目构面”页面。此页面列出了项目中的构面及其版本。
- 单击“修改项目”,然后选中希望项目具有的构面旁边的复选框。 醇>
- 通过单击当前版本号并从下拉列表中选择所需的版本号,为构面选择版本号。
- 可选:要删除构面,请清除其复选框。并非所有方面都可以删除。
- 可选:如果要限制项目以使其与一个或多个运行时兼容,请单击“运行时”选项卡,然后选择希望项目与之兼容的运行时。有关运行时的更多信息,请参阅为J2EE项目指定目标服务器。
- 单击“完成”退出“修改分面项目”对话框,然后单击“确定”。 醇>
- 在Java EE透视图的Project Explorer视图中,右键单击该项目,然后选择Properties。
- 在“属性”窗口中选择“项目构面”页面。此页面列出了项目中的构面及其版本。
- 单击“修改项目”,然后单击要更改的构面。
- 从构面名称旁边的下拉框中选择构面的版本。
- 单击“完成”关闭“修改分面项目”窗口,然后单击“确定”。 醇>
注意:仅列出对项目有效的构面
某些方面可能无法协同工作。因此,你也可以 从预设列表中选择预设的构面组合 。
Facets在Eclipse中也有版本号。 只要您符合构面的要求,您就可以更改构面的版本号 。 要更改项目中构面的版本,请完成以下步骤:
你可以用facet做更多的事情。我给出了一些例子,以便您更好地理解。请详细说明