Що таке java ee stack overflow російською
Вивчаю Java SE для застосування інтернеті. От ніяк не можу зрозуміти, що за Enterprise Edition. C SE все зрозуміло - набір різних бібліотек, які поставляються з джавою, компілятор там і все подібне.
Але Java EE - це якась загадка. Вікіпедія каже, що Java EE - це Java SE з дуже хорошою специфікацій, здатністю до масштабування і все таке інше. Але що дійсно це означає. Хіба у SE погана специфікація?
В описі "для чайників" говориться, що Java EE - це Java SE з динамічно змінюваними бібліотеками. Це як. Якщо мається на увазі оновлення, то і на SE є Maven і все таке, навіщо тоді EE?
Ще часто говорять, що Java EE потрібен для серверних розробок. Але навіщо. Сервлети без проблем можна клепати і на Java SE. Для використання backend-сервера можна скористатися бібліотекою Jetty. І все це SE.
Особисто мені поки взагалі не зрозуміло, що відбувається в світі Java EE. Може хто-небудь привести приклад використання або написати, ніж EE дійсно може допомогти?
заданий 1 Серпня '16 о 19:19
Щось ви не те прочитали в вікіпедії, або не так зрозуміли. Вікіпедія не говорить, що Java EE це Java SE.
Так, якщо ви напишіть сервер на Jetty, це буде не Java EE (це буде чать Java EE починаючи з 7-ої версії Jetty). Але Java EE це не одні сервлети, туди входить JSP, EJB, CDI, JPA і купа інших специфікацій (див. Посилання на вікіпедію).
На практиці, J2EE це базовий набір інтерфейсів / класів / анотацій, а вже імплементації надають сервера додатків - WildFly, GlassFish, WebSphere та інші.
Хіба у SE погана специфікація.
Чи не погана, це різні специфікації.
В описі "для чайників" говориться, що Java EE - це Java SE з динамічно змінюваними бібліотеками.
Але навіщо. Сервлети без проблем можна клепати і на Java SE. Для використання backend-сервера можна скористатися бібліотекою Jetty.
Jetty це контейнер сервлетів, це грубо кажучи реалізація частини J2EE (з 7-ої вресіі підтримує Servlet 2.5 API, з 8-ої 3.0). Також як, наприклад, Weld одна з реалізацій CDI. Ви це все можете використовувати окремо, можете все разом. Можете взяти N технологій J2EE і зв'язати самостійно, вийде Кривенький-косенько сервер додатків. Хоча краще все таки взяти готовий)
І Jetty це SE, і інші фреймворки це SE, та й половина класів Java це теж SE. Якщо є бажання, можете все з нуля писати.
Особисто мені поки взагалі не зрозуміло, що відбувається в світі Java EE.
Раджу прочитати від і до хоча б одну книгу по J2EE.
Може хто-небудь привести приклад використання або написати, ніж EE дійсно може допомогти?
Кожна специфікація з J2EE вам чимось допомагає, ви можете використовувати їх окремо або в комплексі, в залежності від ваших завдань. Наприклад: CDI - зручна ін'єкція залежностей, не потрібно писати купу зайвого коду або модулів для Guice, JPA - зручна робота з БД на рівні об'єктів, EJB - зручне написання бізнес логіки, JAX-WS - підтримка веб-сервісів, сервлети - обробка HTTP запитів і т.д. Дозвольте одного програміста використовувати тільки Java SE, а другого Java EE і подивіться за скільки вони вирішать якусь задачу пов'язану з веб.
відповідь даний 1 Серпня '16 о 21:23