Что это такое ваше Java EE?
Что такое Java SE и Java EE без унылостей.
Расшифровка Java SE — Java Standart Edition. Эсьешая джава это стандартный набор который идет с JDK (хотя постепенно пополняется) . Java SE довольно мощная сама по себе но в соло она катки особо не тащит. Java EE — Java Enterprise Edition это то что уже успело умереть но и породило штуковин которые сейчас у всех на слуху.
Но сначала немного о том что было миллиард лет назад.
Или о том как Java EE родилась, развивалась и откинулась (хотя не совсем то и откинулась).
В общем где то в нулевых годах зародилась такая штука как Java EE. По сути это был набор спецификаций. Эти спецификации стандартизировали всякую дичь которую деплоили на апликейшен серваки.
Апликейшн Сервер, Щито?
Проще говоря это такая Java программа которая позволяет динамически подгружать (или отгружать) другие Java программы. Спецификации которые описывает Java EE позволяют стандартизировать решения от разных производителей. Например JPA Java Persistence API определяет стандарт для взаимодействия с базой через ORM (Object Relational Mapping).
На практике это значит что Java EE в своем JSR (Java specification Request — или проще говоря в документации) опишет следующие аннотации и требования к ним.
В общем рядовым программистам нужно всего лишь знать какие аннотации использовать которые затем могут быть подменены имплементациями других производителей.
Если использовать лишь стандартный JPA тогда можно переключив зависимости не менять код вообще. Например для JPA можно использовать следующие реализации:
- DataNucleus
- Hibernate
- EclipseLink
- OpenJPA
НО на практике это неоч работало. Просто добавив зависимость решение не заводилось (чаще потому что требовалось еще какие то зависиомсти итд).
Что было дальше?
В общем история была мутная. В общем Java EE медленно развивалась бла бла и Spring кончил её. Теперь Java EE стала Jakara EE но в общем по большому счету рынок захватил Spring.
Что же такое Java EE сейчас?
Сейчас под этим скорее подразумевается не то о чем я рассказал. А то наследие которое осталось. Все те вагоны аннотаций и их реализации которые решали задачи:
- Взаимодействие с базой данных
- Взаимодействие с очередью
- Взаимодействие с фронтом итд
То старье видизменилось но по сути старые паттерны решают те же задачи.
Еще есть проекты которые живут на апликейшн серверах, особенно в легаси серверах. Потенциал в них все еще есть и Jakarta будет развиваться точнее быстрее чем старый EE мир. Кстати внутри спринга находится томкат или нетти или то еще что то (на выбор) .
Больше контента по Java можно найти в этом чате. Там также можно задавать вопросы и получать консультации. Всем добра.