Вопрос

Мне интересно не только, что такое Facet, но и что такое Facet «на физическом уровне» (насколько я понимаю, это не отдельная банка, но что?)?

Мне также интересно, как это может повлиять на мое приложение после развертывания. Я объясню на реальном примере:

У меня было 2 аспекта (которые были созданы в IDE): Spring Facet и Web Facet (для jsf). Я развернул его в Tomcat, и мое приложение работало нормально.

Затем я добавил (с помощью IDE) еще один аспект - JPA Facet. Я повторно развернул приложение и .. оно все еще работало нормально :)

Итак, мне просто интересно, что это и зачем нам это нужно?

Это было полезно?

Решение

Это не связано с Java EE. Это связано с IDE. Термин сам по себе не связан с программированием.

От http://www.thefreedictionary.com/facet

  

fac & # 183; et (fst) n .

     <Ол>   
  • Одна из плоских полированных поверхностей, вырезанная на драгоценном камне или встречающаяся   естественно на кристалле.
  •   
  • Анатомия Маленькая, гладкая, плоская поверхность, как на кости или зубе.
  •   
  • Биология Одна из линзоподобных визуальных единиц сложного глаза на   насекомое.
  •   
  • Один из многочисленных аспектов предмета. См. Синонимы на phase .
  •   

    Сейчас 4.

    В данном конкретном случае это просто аспект, который должен использоваться в проекте, чтобы среда IDE могла перехватывать его в отношении генераторов, мастеров, библиотек с автоматическим включением и так далее. Если вы добавите, например, JPA фасет, то у вас появится больше возможностей для выполнения IDE-магия с JPA.

    Другие советы

    Как сказал BalusC, это связано не с Java EE, а с IDE. Это позволяет добавлять «характеристики» к проекту гибким способом.

    Из IntelliJ IDEA Q & A для пользователей Eclipse (потому что вы упомянутая ИДЕЯ):

      

    Q: Facets & # 8212; для чего они?

         

    A: для оптимизации конфигурации проекта.

         

    Аспекты инкапсулируют поддержку для   Разнообразие рамок, технологий   и языки. Например, чтобы включить   Весна в вашем проекте, у вас есть только   добавить соответствующий фасет. Все   библиотеки загружаются и   настроив, вы получите полный спектр   помощь в кодировании, рефакторинг и т. д.   Кроме того, модель кода также   признан, так что вы совершенно свободны   от беспокойства о любой конфигурации   вопросы.

         

    В большинстве случаев вы можете добавить более   один аспект того же типа к вашему   проект. Например, вы можете иметь   несколько веб-аспектов для развертывания   приложение на разных серверах, или   несколько аспектов EJB, каждый для своего   EJB версия. (См. Также проект   Конфигурация.)

    И да, Eclipse использует " Facets " тоже:

    alt text

    AFAIK, NetBeans не поддерживает strong> Как настроить веб-фреймворк для моего проекта? ).

    Facets - это платформа веб-приложений, которая использует простую архитектуру MVC для серверной части и функционально-функциональную модель компонентов Javascript для клиента. Эти две части предназначены для безупречной интеграции в очень динамичные приложения в стиле AJAX

    Как объяснено в Eclipse & amp; Intellij документация, аспекты определяют характеристики и требования (определенная конфигурация , специфичные для конкретной структуры / технологии).

    Когда вы добавляете фасет в проект, этот проект настраивается для выполнения определенной задачи, выполнения определенных требований или получения определенных характеристик.

    Короче говоря, вы должны следовать некоторой структуре для реализации некоторой структуры / технологии. В IDE есть варианты, позволяющие упростить вам жизнь.

    Для более детальной проработки я приведу некоторые подробности непосредственно из документации по Eclipse. Это Eclipse-специфичный .

    Хотя создавая проект , вы получите возможность реализовать фасет для своего проекта. Например, фасет EAR настраивает проект для функционирования в качестве приложения предприятия, добавляя дескриптор развертывания и устанавливая путь к классам проекта.

    Чтобы добавить еще один аспект в проект , который уже существует, выполните следующие действия:

    <Ол>
  • В представлении Project Explorer для Java & # 8482; Перспектива EE, щелкните правой кнопкой мыши проект и выберите «Свойства».
  • Выберите страницу «Фасеты проекта» в окне «Свойства». На этой странице перечислены аспекты проекта и их версии.
  • Нажмите "Изменить проект" и установите флажки рядом с фасетами, которые должен иметь проект.
  • Примечание. В списке указаны только те аспекты, которые действительны для проекта.

    Некоторые аспекты могут не работать вместе. Таким образом, вы также можете выберите предустановленную комбинацию фасетов из списка предустановок .

    <Ол>
  • Выберите номер версии для фасета, щелкнув номер текущей версии и выбрав нужный номер версии в раскрывающемся списке.
  • Необязательно: чтобы удалить фасет, снимите его флажок. Не все аспекты могут быть удалены.
  • Необязательно: Если вы хотите ограничить проект, чтобы он был совместим с одной или несколькими средами выполнения, щелкните вкладку «Среда выполнения» и выберите среды выполнения, с которыми вы хотите совместить проект. Дополнительную информацию о времени выполнения смотрите в разделе Указание целевых серверов для проектов J2EE.
  • Нажмите кнопку "Готово", чтобы закрыть диалоговое окно "Изменить граненый проект", а затем нажмите кнопку "ОК".
  • Фасеты также имеют номера версий в Eclipse. Вы можете изменить номера версий фасетов , если вы соблюдаете требования к фасетам. Чтобы изменить версию фасета в вашем проекте, выполните следующие действия:

    <Ол>
  • В представлении Project Explorer перспективы Java EE щелкните проект правой кнопкой мыши и выберите «Свойства».
  • Выберите страницу «Фасеты проекта» в окне «Свойства». На этой странице перечислены аспекты проекта и их версии.
  • Нажмите "Изменить проект" и выберите фасет, который вы хотите изменить.
  • Выберите версию фасета в раскрывающемся списке рядом с именем фасета.
  • Нажмите кнопку "Готово", чтобы закрыть окно "Изменить граненый проект", а затем нажмите кнопку "ОК".
  • Вы можете делать больше вещей с гранями. Я привел примеры для вашего лучшего понимания. Для деталей, пожалуйста

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top