Jakarta EE

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Java EE»)
Текущая версия страницы покане проверялась опытными участниками и может значительно отличаться отверсии, проверенной 15 января 2020 года; проверки требуют17 правок.
Перейти к навигацииПерейти к поиску
Jakarta EE
Логотип программы Jakarta EE
Типвеб-фреймворк, рабочая группа, техническая спецификация[вд] и интерфейс программирования приложений
АвторSun Microsystems
РазработчикиSun Microsystems, Oracle и Eclipse Foundation
Написана наJava
Операционная системаКроссплатформенное программное обеспечение
Последняя версия
Сайтjakarta.ee (англ.)
Логотип Викисклада Медиафайлы на Викискладе

Jakarta EE (ранее —Java Platform, Enterprise Edition, сокр.Java EE, до версии 5.0 —Java 2 Enterprise Edition илиJ2EE). В 2018Eclipse Foundation переименовалаJava EE вJakarta EE — набор спецификаций и соответствующей документации для языкаJava, описывающей архитектуру серверной платформы для задач средних и крупных предприятий.

Спецификации детализированы настолько, чтобы обеспечить переносимость программ с одной реализации платформы на другую. Основная цель спецификаций — обеспечитьмасштабируемость приложений и целостность данных во время работы системы. Java EE во многом ориентирована на использование её через веб, как винтернете, так и влокальных сетях. Всяспецификация создаётся и утверждается черезJCP (Java Community Process) в рамках инициативыSun Microsystems Inc.

Java EE является промышленной технологией и в основном используется в высокопроизводительных проектах, в которых необходима надежность, масштабируемость, гибкость.

Популярности Java EE также способствует то, что Sun предлагает бесплатный комплект разработки,SDK, позволяющий предприятиям разрабатывать свои системы, не тратя больших средств. В этот комплект входит сервер приложенийGlassFish с лицензией для разработки.

Содержание

Версии

[править |править код]

Актуальная версия Java EE имеет номер 8.0. Развитие технологии Java EE отображено на страницеистории версий.

При переходе на версию 5.0 изменилось и название спецификации с J2EE [ˌdʒeɪˈtuː ˌiːˈiː] (Java 2 Platform, Enterprise Edition), наJava Platform, Enterprise Edition, сокращённоJava EE [ˈdʒɑːvə ˌiːˈiː].

ВерсияПолное имяДата публикации
1.0Java 2 Platform Enterprise Edition, v 1.0декабрь 1999
1.2Java 2 Platform Enterprise Edition, v 1.22000
1.2.1Java 2 Platform Enterprise Edition, v 1.2.123 мая 2000
1.3Java 2 Platform Enterprise Edition, v 1.324 сентября 2001
1.4Java 2 Platform Enterprise Edition, v 1.424 ноября 2003
5.0Java Platform, Enterprise Edition, v 511 мая 2006
6.0Java Platform, Enterprise Edition, v 66 декабря 2009
7.0Java Platform, Enterprise Edition, v 712 июня 2013
8.0Java Platform, Enterprise Edition, v 818 сентября 2017[2][3]
Jakarta EE 82019-09-10[4]
Jakarta EE 92020-12-08[5]
Jakarta EE 9.12021-05-25[6]
Jakarta EE 102022-09-22[7]
Jakarta EE 11Planned

Технологии

[править |править код]

Java EE включает в себя стандарты следующих технологий:


ОписаниеИспользованная версия
J2EE 1.4Java EE 5Java EE 6Java EE 7Java EE 8
2003 г.2006 г.2009 г.2013 г.2018 г.
EJBEnterprise JavaBeans — спецификация технологии серверных компонентов, содержащихбизнес-логику2.13.03.13.23.2
JPAJava Persistence API — управление постоянством и объектно-реляционное отображениеНет1.02.02.12.2
ServletОбслуживание запросов веб-клиентов2.42.53.03.14.0
JSPJavaServer Pages — динамическая генерация веб-страниц на стороне сервера2.02.12.22.32.3
JSTLJavaServer Pages Standard Tag LibraryНет1.21.21.21.2
JSFJavaServer Faces — компонентный серверный фреймворк для разработки веб-приложений на технологии JavaНет1.22.02.22.3
JAX-WSJava API for XML Web Services — создание веб-сервисов1.01.21.22.22.2
JAX-RSJava API for RESTful Web Services — создание RESTful веб-сервисовНетНет1.12.02.1
WebSocketJava API for WebSocketНетНетНет1.01.1
JSON-PJava API for JSON Processing — разбор и генерация JSONНетНетНет1.01.1
JSON-BJava API for JSON Binding — преобразование Java объектов в/из JSONНетНетНетНет1.0
JNDIJava Naming and Directory Interface — служба каталогов1.21.21.21.21.2
JMSJava Message Service — обмен сообщениями1.11.11.12.02.0
JTAJava Transaction API — управление транзакциями1.0.1B1.11.11.21.2
JAASJava Authentication and Authorization Service — Java-реализацияPAM1.01.01.0
JavaMailПолучение и отправка электронной почты1.21.41.41.51.6
JACCJava Authorization Contract for Containers1.01.11.11.41.5
JCAJ2EE Connector Architecture1.51.51.61.61.7
JAFJavaBeans Activation Framework1.01.11.11.11.1
StAXStreaming API for XMLНет1.01.01.01.0
CDIContext and Dependency InjectionНетНет1.01.12.0
ValidationBean ValidationНетНет1.01.12.0
SecurityJava EE Security APIНетНетНетНет1.0

API в Java EE

[править |править код]

Java EE API включает в себя несколько технологий, которые расширяют функциональность базовыхJava SE API-интерфейсов.

javax.servlet. *

[править |править код]

Спецификациясервлетов определяет наборпрограммных интерфейсов для обслуживанияHTTP-запросов. Она включает в себя спецификацииJavaServer Pages.

javax.websocket. *

[править |править код]

СпецификацияJava API дляWebSocket определяет набор программных интерфейсов для обслуживания WebSocket-соединений.

javax.faces. *

[править |править код]

Этот пакет является корнемJavaServer Faces API. JSF — это технология для построенияпользовательских интерфейсов из компонентов.

javax.faces.component. *

[править |править код]

Этот пакет — составная частьJavaServer Faces (JSF) API.

javax.el. *

[править |править код]

Этот пакет определяет классы и интерфейсы для языка выражений в Java EE. Expression Language (EL) — это простой язык, изначально предназначенный для удовлетворения конкретных потребностей разработчиков веб-приложений. Он используется, в частности, в JSF для связывания компонентов (backing) beans и в CDI name beans, но может быть использован для других платформ.

javax.enterprise.inject. *

[править |править код]

Эти пакеты определяют аннотации вложения для(CDI) API  (англ.).

javax.enterprise.context. *

[править |править код]

Эти пакеты определяютконтекст аннотации и интерфейсы для(CDI) API  (англ.).

javax.ejb. *

[править |править код]

Enterprise JavaBean (EJB) определяет набор API-интерфейсовудалённого вызова процедур (с использованиемRMI или RMI-IIOP), управление параллелизмом, инъекции зависимости и контроля доступа для бизнес-объектов. Этот пакет содержит классы и интерфейсы, определяющие связь между корпоративным компонентом и его клиентом, а также между корпоративным компонентом и EJB-контейнером.

javax.validation. *

[править |править код]

Этот пакет содержит аннотации и интерфейсы для поддержки декларативной проверкиBean Validation[англ.] API. Bean Validation обеспечивает единый способ обеспечения ограничения на bean (например, классовJPA модели), что может быть реализовано с помощью cross-layer.

javax.persistence. *

[править |править код]

Этот пакет содержит классы и интерфейсы, которые определяют связь между поставщиком, управляемым классом и клиентомJava Persistence API (JPA).

javax.transaction. *

[править |править код]

Этот пакет предоставляетJava Transaction API (JTA), который содержит интерфейсы и аннотации для взаимодействия с поддержкой транзакций, предлагаемой Java EE.

javax.security.auth.message. *

[править |править код]

Этот пакет предоставляет Java SPI (JASPIC), который содержит интерфейсы и классы для создания модулейаутентификации для безопасных "Java EE"-приложений.

javax.enterprise.concurrent. *

[править |править код]

Этот пакет предоставляет интерфейсы для взаимодействия непосредственно с платформой Java EE, по умолчанию управляет запускомпотоков.

javax.jms. *

[править |править код]

Этот пакет определяетJava Message Server (JMS) API (Application Programming Interface). JMS API предоставляет для программ Java распространенный способ создавать, отправлять, получать и читать сообщения системы корпоративного обмена сообщениями.

javax.batch.api. *

[править |править код]

Этот пакет определяет вступление AP для Java EEbatch applications. Batch applications API предоставляет средства для запуска длительных фоновых задач, которые, возможно, связаны с большим объёмом данных.

javax.resource. *

[править |править код]

Этот пакет определяетJava EE Connector Architecture[англ.]. Java EE Connector Architecture (JCA) является Java-технологией для решения проблем подключения серверов приложений к их корпоративным информационным системам (КИС) в рамках интеграции корпоративных приложений (EAI).

Сервер приложений

[править |править код]

Сервер приложений J2EE (часто называемый J2EE-контейнер) — это реализация системы в соответствии со спецификацией J2EE, обеспечивающая работу модулей с логикой конкретного приложения. Включает в себя как минимум следующие сервисы:

Разработчики J2EE-приложений также пишут свои программы в соответствии с спецификациями J2EE, что обеспечивает их работу внутри таких серверов.

Технологию J2EE рационально использовать для реализации крупных проектов, например, для организации сложных веб-порталов и предоставления услугонлайн, особенно если необходимо обеспечить бесперебойную работу многих тысяч пользователей.

Свободные серверы с открытым исходным кодом

Коммерческие серверы

Отдельные Servlet/JSP-контейнеры

Отдельные EJB-контейнеры

См. также

[править |править код]

Примечания

[править |править код]
  1. The Eclipse Foundation’s Jakarta EE Working Group Releases Jakarta EE 10 — 2022.
  2. JSR 366: Java Platform, Enterprise Edition 8 (Java EE 8) Specification (англ.). Java Community Process. Дата обращения: 22 декабря 2017. Архивировано 22 марта 2018 года.
  3. Компания Oracle выпустила Java SE 9 и Java EE 8.OpenNET. 22 сентября 2017.Архивировано 22 декабря 2017. Дата обращения: 22 декабря 2017.
  4. Mmayel, Shabnam; Obradovic, Tanja (10 сентября 2019).Jakarta EE 8 Released!. News.Jakarta EE (Press release).Eclipse Foundation.Архивировано 2022-03-05. Дата обращения:2022-03-05.{{cite press release}}:|archive-date= /|archive-url= несоответствие временной метки; предлагается 2022-03-05 (справка)
  5. Mmayel, Shabnam; Obradovic, Tanja (8 декабря 2020).Jakarta EE 9 Released!. News.Jakarta EE (Press release).Eclipse Foundation.Архивировано 2022-03-05. Дата обращения:2022-03-05.{{cite press release}}:|archive-date= /|archive-url= несоответствие временной метки; предлагается 2022-03-05 (справка)
  6. Obradovic, Tanja; Grimstad, Ivar (25 мая 2021).The Jakarta EE Working Group Releases Jakarta EE 9.1 as Industry Continues to Embrace Open Source Enterprise Java. News.Jakarta EE (Press release).Eclipse Foundation.Архивировано 2022-03-05. Дата обращения:2022-03-05.{{cite press release}}:|archive-date= /|archive-url= несоответствие временной метки; предлагается 2022-03-05 (справка)
  7. Obradovic, Tanja; Grimstad, Ivar (22 сентября 2022).The Eclipse Foundation's Jakarta EE Working Group Releases Jakarta EE 10 to Usher in the Era of Cloud Native Java. News.Jakarta EE (Press release).Eclipse Foundation.Архивировано 2024-07-21. Дата обращения:2024-07-17.{{cite press release}}:|archive-date= /|archive-url= несоответствие временной метки; предлагается 2024-07-21 (справка)

Ссылки

[править |править код]

Литература

[править |править код]
  • Себастьян Дашнер. Изучаем Java EE. Современное программирование для больших предприятий. —СПб.:«Питер», 2018. — 384 с. —ISBN 978-5-4461-0774-2.
  • Арун Гупта. Java EE 7. Основы = Java EE 7 Essentials. —М.:«Вильямс», 2014. — 336 с. —ISBN 978-5-8459-1896-3.
  • Браун К.; Крейг Г.; Хестер Г. и др. Создание корпоративных Java-приложений для IBM WebSphere. — Кудиц-Образ, 2005. — 860 с. —ISBN 5-9579-0061-3, 0-321-18579-X.
Перейти к шаблону «Java»
Платформы
ТехнологииSun
Основные сторонние технологии
История
Свойства языка
Скриптовые языки
Конференции Java
Перейти к шаблону «Java-платформы»
Java-платформы
Источник —https://ru.wikipedia.org/w/index.php?title=Jakarta_EE&oldid=149813688
Категории:
Скрытые категории: