Java EE (Java Enterprise Edition) je platforma pro vývoj a nasazení rozsáhlých, robustních, a spolehlivých webových aplikací. Zde jsou některé základní charakteristiky Java EE:
Java EE je široce používaná platforma pro vývoj firemních webových aplikací, intranetových systémů, e-commerce aplikací a dalších enterprise řešení. Její flexibilita a robustnost ji činí vhodnou pro nasazení v různých prostředích a pro různé typy aplikací.
Java EE aplikace jsou vyvíjeny v jazyce Java, takže budete potřebovat JDK pro kompilaci a běh aplikace.
Pro testování Java EE aplikací je nezbytné mít Java EE Application Server, jako je například Apache Tomcat, WildFly, GlassFish nebo Payara. Tyto servery poskytují běhové prostředí pro nasazení vašich aplikací.
Pro vývoj Java EE aplikací je vhodné použít IDE, které poskytuje podporu pro tvorbu a testování Java EE aplikací. Některé populární volby zahrnují IntelliJ IDEA, Eclipse nebo NetBeans.
Pro testování Java EE aplikací můžete použít různé testovací frameworky, jako je JUnit pro jednotkové testování a Selenium pro automatizované testování webových aplikací.
Pokud vaše Java EE aplikace pracuje s databází, budete potřebovat přístup k databázovému serveru pro testování přístupu k datům a provádění integračních testů.
Pro správu závislostí vaší aplikace a stažení potřebných knihoven a frameworků můžete použít správce závislostí jako Maven nebo Gradle.
Pro ladění a monitorování výkonu vaší Java EE aplikace můžete použít různé nástroje, jako je například VisualVM, JConsole nebo profily výkonu poskytované vaším Java EE Application Serverem.
Apache Tomcat je open-source aplikační server vyvíjený Apache Software Foundation. Je určen především pro běh servletů a JSP (JavaServer Pages), což jsou základní technologie pro vývoj webových aplikací v Javě. Tomcat je snadno použitelný a lehký, což z něj činí oblíbenou volbu pro vývojáře, kteří potřebují jednoduchý a efektivní aplikační server pro své webové aplikace.
WildFly (dříve známý jako JBoss Application Server) je open-source aplikační server vyvíjený společností Red Hat. Je plně certifikován pro provoz Java EE aplikací a nabízí širokou škálu funkcí a podporovaných technologií, včetně servletů, EJB (Enterprise JavaBeans), JPA (Java Persistence API), CDI (Contexts and Dependency Injection) a dalších. WildFly je navržen tak, aby byl výkonný, bezpečný a snadno rozšiřitelný.
GlassFish Open Source server je open-source aplikační server vyvíjený společností Oracle. Je referenčním implementačním projektem pro Java EE platformu a je plně certifikován jako Java EE kompatibilní server. GlassFish nabízí širokou škálu funkcí a podporuje nejnovější specifikace a technologie Java EE. Je známý pro svou jednoduchou instalaci a konfiguraci a je často používán v průmyslových a komerčních prostředích.
GlassFish EClipse Open Source server je mozno provozovat na lokale.
Payara Server je open-source aplikační server, který vychází z GlassFish a je vyvíjen firmou Payara Services Ltd. Jedná se o plně certifikovaný Java EE aplikační server, který nabízí vylepšenou stabilitu, výkon a podporu ve srovnání s GlassFish. Payara Server je kompatibilní s GlassFishem, což znamená, že aplikace vyvinuté pro GlassFish lze snadno nasadit na Payara Server a naopak.
Servlety jsou Java třídy používané pro vytváření dynamických webových aplikací. Jsou součástí Java EE (Enterprise Edition) a poskytují způsob, jak zpracovávat HTTP požadavky na serveru. Servlety jsou implementací rozhraní Servlet a jsou spouštěny servletovým kontejnerem, jako je například Apache Tomcat nebo Jetty. Slouží k tvorbě dynamických webových stránek, interakci s databázemi, zpracování formulářů a dalším.
JSP je technologie pro vytváření dynamických webových stránek v jazyce Java.
JSP stránky jsou HTML stránky s kódem Java vloženým pomocí speciálních značek (<% %>
nebo <%= %>
).
Jsou kompilovány do servletů a spouštěny servletovým kontejnerem.
Umožňují snadnou integraci Java kódu do HTML šablon, což usnadňuje vytváření dynamických stránek.
JSF je komponentový rámec pro tvorbu uživatelských rozhraní (UI) v Javě. Poskytuje sadu komponent a nástrojů pro vytváření webových formulářů, tabulek, dialogů a dalších UI prvků. Umožňuje snadnou manipulaci s daty mezi klientem a serverem pomocí správců stavů a událostí. Pomáhá oddělit logiku aplikace od prezentace a zjednodušuje vývoj webových aplikací.
EJB je architektonický rámec pro vytváření distribuovaných a transakčně zabezpečených aplikací v Javě. Poskytuje znovupoužitelné komponenty pro logiku aplikace, které jsou nasazeny v kontejnere EJB. EJB komponenty mohou být stavové nebo bezstavové a jsou spravovány kontejnerem, což snižuje potřebu programátora o správu životního cyklu komponenty.
JPA je API pro práci s objektově-relačním mapováním (ORM) v Javě. Poskytuje způsob, jak mapovat objekty v Javě na záznamy v relační databázi a naopak. Umožňuje snadnou práci s databázemi pomocí objektového přístupu a zjednodušuje vytváření a správu databázových operací.
CDI je specifikace v Java EE pro správu závislostí a kontextů v aplikacích. Poskytuje způsob, jak injektovat (vkládat) závislosti do komponent a spravovat jejich životní cyklus. Umožňuje snadnou integraci různých komponent a zvyšuje modularitu a znovupoužitelnost aplikací.
JDBC je API pro práci s relačními databázemi v jazyce Java. Poskytuje způsob, jak se spojit s databází, odesílat SQL dotazy a zpracovávat výsledky dotazů. Umožňuje aplikacím komunikovat s různými databázovými systémy a pracovat s daty.
Spring je rozsáhlý rámec pro vývoj aplikací v jazyce Java. Poskytuje mnoho modulů pro různé účely, včetně správy závislostí, aspektově orientovaného programování, webového vývoje, integračního testování a dalších. Spring usnadňuje vývoj robustních a škálovatelných aplikací a podporuje moderní architektonické vzory.
Spring Boot je rozšíření Spring frameworku, které zjednodušuje vývoj samostatných, produkčně nasaditelných aplikací. Poskytuje automatickou konfiguraci, zabudované nástroje pro monitorování a správu, a podporu pro vytváření mikroslužeb. Spring Boot pomáhá rychle vytvářet moderní a efektivní aplikace v jazyce Java.
Hibernate je populární framework pro objektově-relační mapování (ORM) v jazyce Java. Umožňuje mapovat objekty v Javě na záznamy v relační databázi a naopak, což usnadňuje práci s databázemi. Poskytuje možnosti pro správu stavu objektů, zpracování dotazů a transakcí, a podporuje různé databázové systémy.
JUnit je framework pro jednotkové testování v jazyce Java. Umožňuje psát a spouštět testovací scénáře pro ověření správnosti funkcionality jednotlivých částí aplikace. Pomáhá zajistit kvalitu kódu a zlepšuje robustnost aplikace.
Maven je nástroj pro správu projektů v jazyce Java. Poskytuje způsob, jak spravovat závislosti, sestavit projekt, spouštět testy, generovat dokumentaci a další. Umožňuje snadnou správu a automatizaci procesů ve vývojovém cyklu.
Gradle je další nástroj pro správu projektů v jazyce Java, který se zaměřuje na flexibilitu a výkon. Umožňuje popisovat projekty pomocí skriptů psaných v jazyce Groovy nebo Kotlin a poskytuje mocné mechanismy pro konfiguraci a sestavení projektu.