Java Platform, Enterprise Edition

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Java Platform, Enterprise Edition
Wave.svg
Тип

Платформа программирования

Разработчик

Sun Microsystems

Операционная система

Кроссплатформенное программное обеспечение

Последняя версия

(12 июня 2013)

Сайт

oracle.com/technetwork/java/javaee/

Wave.svg
Java Card
Micro Edition (ME)
Standard Edition (SE)
Enterprise Edition (EE)
PersonalJava (не поддерживается)

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

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

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

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

Версии[править | править исходный текст]

Актуальная версия Java EE имеет номер 7.0.

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

Версия Полное имя Дата публикации
1.0 Java 2 Platform Enterprise Edition, v 1.0 декабрь 1999
1.2 Java 2 Platform Enterprise Edition, v 1.2 2000
1.2.1 Java 2 Platform Enterprise Edition, v 1.2.1 23 мая 2000
1.3 Java 2 Platform Enterprise Edition, v 1.3 24 сентября 2001
1.4 Java 2 Platform Enterprise Edition, v 1.4 24 ноября 2003
5.0 Java Platform, Enterprise Edition, v 5 11 мая 2006
6.0 Java Platform, Enterprise Edition, v 6 6 декабря 2009
7.0 Java Platform, Enterprise Edition, v 7 12 июня 2013

Технологии[править | править исходный текст]

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


Описание Использованная версия
J2EE 1.4 JEE 5 JEE 6 JEE 7
2003 г. 2006 г. 2009 г. 2013 г.
EJB Enterprise JavaBeans — спецификация технологии серверных компонентов, содержащих бизнес-логику 2.1 3.0 3.1 3.2
JPA Java Persistence API Нет 1.0 2.0 2.1
Сервлет Обслуживание запросов веб-клиентов 2.4 2.5 3.0 3.1
JSP JavaServer Pages — динамическая генерация веб-страниц на стороне сервера 2.0 2.1 2.2 2.2
JSTL JavaServer Pages Standard Tag Library Нет 1.2 1.2 1.2
JSF JavaServer Faces — компонентный серверный фреймворк для разработки веб-приложений на технологии Java Нет 1.2 2.0 2.2
JAX-WS Java API for XML Web Services — создание веб-сервисов 1.0 1.2 1.2
JNDI Java Naming and Directory Interface — служба каталогов 1.2 1.2 1.2
JMS Java Message Service — обмен сообщениями 1.1 1.1 1.1 2.0
JTA Java Transaction API 1.0.1B 1.1 1.1 1.2
JAAS Java Authentication and Authorization Service — Java реализация PAM 1.0 1.0 1.0
JavaMail Получение и отправка электронной почты 1.2 1.4 1.4 1.5
JACC Java Authorization Contract for Containers 1.0 1.1 1.1 1.4
JCA J2EE Connector Architecture 1.5 1.5 1.6
JAF JavaBeans Activation Framework 1.0 1.1 1.1
StAX Streaming API for XML Нет 1.0 1.0
CDI Context and Dependency Injection Нет Нет 1.0 1.1

API в Java EE[править | править исходный текст]

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

javax.servlet. *[править | править исходный текст]

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

javax.websocket. *[править | править исходный текст]

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

javax.faces. *[править | править исходный текст]

Этот пакет является корнем (JSF) 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 ), управление параллелизмом , зависимость инъекции и контроля доступа для бизнес-объектов. Этот пакет содержит Enterprise JavaBeans классы и интерфейсы, которые определяют связь между корпоративным компонентом и его клиентом, а также между корпоративным компонентом и контейнером 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 EE batch applications. Batch applications API предоставляет средства для запуска длительных фоновых задач, которые возможно связаны с большим объемом данных.

javax.resource. *[править | править исходный текст]

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

Сервер приложений[править | править исходный текст]

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

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

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

Open Source серверы
Коммерческие серверы
Отдельные Servlet/JSP Контейнеры
Отдельные EJB Контейнеры

См. также[править | править исходный текст]

Ссылки[править | править исходный текст]

Литература[править | править исходный текст]

  • Браун К.; Крейг Г.; Хестер Г. и др. Создание корпоративных Java-приложений для IBM WebSphere. — Кудиц-Образ, 2005. — С. 860. — ISBN 5-9579-0061-3, 0-321-18579-X

Конкурирующие технологии[править | править исходный текст]