Спецификация | Версия | JSR | URL |
---|---|---|---|
JSF | 2.2 | 344 | http://jcp.org/en/jsr/detail?id=344 |
JSP | 2.3 | 245 | http://jcp.org/en/jsr/detail?id=245 |
JSTL | 1.2 | 52 | http://jcp.org/en/jsr/detail?id=52 |
Servlet | 3.1 | 340 | http://jcp.org/en/jsr/detail?id=340 |
WebSocket | 1.0 | 356 | http://jcp.org/en/jsr/detail?id=356 |
Expression Language | 3.0 | 341 | http://jcp.org/en/jsr/detail?id=341 |
EJBLite | 3.2 | 345 | http://jcp.org/en/jsr/detail?id=345 |
JPA | 2.1 | 338 | http://jcp.org/en/jsr/detail?id=338 |
JTA | 1.2 | 907 | http://jcp.org/en/jsr/detail?id=907 |
Bean Validation | 1.1 | 349 | http://jcp.org/en/jsr/detail?id=349 |
Managed Beans | 1.0 | 316 | http://jcp.org/en/jsr/detail?id=316 |
Interceptors | 1.2 | 318 | http://jcp.org/en/jsr/detail?id=318 |
Contexts and Dependency Injection | 1.1 | 346 | http://jcp.org/en/jsr/detail?id=346 |
Dependency Injection for Java | 1.0 | 330 | http://jcp.org/en/jsr/detail?id=330 |
Debugging Support for Other Languages | 1.0 | 45 | http://jcp.org/en/jsr/detail?id=45 |
JAX-RS | 2.0 | 339 | http://jcp.org/en/jsr/detail?id=339 |
JSON-P | 1.0 | 353 | http://jcp.org/en/jsr/detail?id=353 |
На протяжении всей книги вы будете встречать фрагменты кода, содержащие сущности, ограничения валидации, компоненты EJB, страницы JSF, слушателей JMS, веб-службы SOAP и RESTful. Все они относятся к приложению CD-BookStore. Это приложение представляет собой коммерческий сайт, который позволяет пользователям просматривать каталог книг и компакт-дисков, имеющихся в продаже. С помощью карты покупателя посетители сайта могут выбирать товары в процессе просмотра каталога (а также удалять их из списка), а затем подсчитать общую стоимость покупки, оплатить товары и получить свой заказ. Приложение осуществляет внешние взаимодействия с банковской системой для валидации номеров кредитных карт. Схема такого примера на рис. 1.6 описывает участников и функции системы.
Рис. 1.6. Схема примера использования приложения CD-BookStore
Участниками, взаимодействующими с описанной системой, являются:
• сотрудники компании, которым необходимо управлять как каталогом товаров, так и пользовательской информацией. Они также могут просматривать заказы на покупку;
• пользователи — анонимные лица, посещающие сайт для просмотра каталога книг и компакт-дисков. Если они хотят купить какой-либо товар, им необходимо создать учетную запись, чтобы стать покупателями;
• покупатели, которые могут просматривать каталог, обновлять информацию в своей учетной записи и покупать товары в режиме онлайн;
• внешний банк, которому система делегирует валидацию кредитных карт.
Вы можете скачать примеры кода из этой книги прямо из репозитория Git по адресу https://github.com/agoncal/agoncal-book-javaee7.
Если компания разрабатывает Java-приложения с добавлением таких корпоративных возможностей, как управление транзакциями, безопасность, параллельный доступ или обмен сообщениями, то следует обратить внимание на платформу Java EE. Она хорошо стандартизирована, работает с различными протоколами, а компоненты развертываются в различные контейнеры, благодаря чему можно пользоваться многими сервисами. Java EE 7 идет по стопам предыдущей версии, упрощая использование веб-уровня. Эта версия платформы легче (благодаря технике отсечения, применению профилей и EJBLite), а также проще в использовании (нет необходимости в интерфейсах для компонентов EJB или в использовании аннотаций на веб-уровне). Благодаря новым спецификациям и функционалу, а также стандартизированному контейнеру свойств дескриптора развертывания и стандартным именам JNDI, платформа стала более насыщенной и удобной для портирования.
В этой главе я сделал очень краткий обзор Java EE 7. В следующих главах мы более подробно разберем спецификации Java EE 7. Каждая глава содержит несколько фрагментов кода и раздел «Все вместе». Вам понадобятся некоторые инструменты и фреймворки для компиляции, развертывания, запуска и тестирования кода: JDK 1.7, Maven 3, Junit 4, Derby 10.8 и Glassfish v4.