Java EE

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În informatică Java Platform, Enterprise Edition sau Java EE (cunoscut, înainte de versiunea 5, cu numele de Java 2 Enterprise Edition sau J2EE ) este un set de specificații ale cărui implementări sunt dezvoltate în principal în limbajul de programare Java și utilizate pe scară largă în programare Web .

Software-ul care implementează această specificație se numește Referencing Runtimes Java EE. Anterior erau numite servere de aplicații. Schimbarea numelui de la serverul de aplicații la timpul de execuție de referință se datorează faptului că, odată cu arhitectura de microservicii, este lansată o aplicație Java independentă, fără a fi nevoie de un server de aplicații. Implementarea poate fi totală (în acest caz numită Platformă completă) sau limitată la profilul web, adică subsetul de specificații care a fost conceput special pentru aplicații web [1] .

Inițial, specificația a încurajat crearea de aplicații care urmează o arhitectură pe mai multe niveluri . Această arhitectură avea scopul de a separa funcțiile legate de afișarea paginilor web de cele pentru gestionarea logicii de afaceri și salvarea informațiilor din baza de date . Recent, cu tehnologii precum Eclipse MicroProfile, WildFly Swarm și Payara Micro, este posibilă și dezvoltarea de microservicii. Acest lucru a dus, de asemenea, la o schimbare a numelui dat implementărilor: anterior erau denumite servere de aplicații, referindu-se acum la runtime.

Acest set de specificații a fost creat inițial de Sun Microsystems, prezentat de Oracle, și transferat în a doua jumătate a anului 2017 către Fundația Eclipse, sub numele de Eclipse Enterprise pentru Java. [2]

Specificații Java EE

Setul de specificații Java EE include multe tehnologii care extind funcționalitatea de bază a platformei Java. Următoarea listă nu prezintă toate componentele, ci doar cele de cea mai mare importanță. Singurele componente care necesită strict utilizarea unui runtime de referință sunt cele de întreprindere, adică cele care au nevoie, de exemplu, de tranzacții distribuite și cozi distribuite. Componentele pentru web și baza de date pot fi, de asemenea, utilizate într-un server web simplu.

Specificații pentru servicii web

În Java EE este posibil să creați servicii web de tip REST și de tip SOAP . Specificațiile sunt:

Specificații web

Componentele care intră în această categorie sunt cele legate de afișarea paginilor web. Dacă doriți să utilizați doar componentele din partea web, nu este necesar să recurgeți la un timp de execuție complex de referință a profilului complet, dar este suficient să utilizați un profil Web de execuție de referință sau un server Web mai raționalizat.

Specificațiile întreprinderii

În această categorie se află componentele specifice Java EE. Utilizarea acestor componente este necesară numai în aplicații medii și mari.

  • Contextele și injecția de dependență care vă permit să utilizați inversiunea de control într-un mod foarte similar cu modul în care faceți cu Spring cadru și să ofere cea mai mare parte a funcționalității oferite de Enterprise JavaBeans;
  • Enterprise JavaBeans definește un sistem de componente distribuite care a constituit inima specificației Java EE. De fapt, acest sistem furniza caracteristicile tipice cerute de aplicațiile de întreprindere , cum ar fi scalabilitatea , securitatea, persistența datelor și multe altele. Multe dintre aceste caracteristici sunt acum disponibile și în contextul și injectarea dependenței;
  • Serviciul Java Message descrie un sistem pentru trimiterea și gestionarea mesajelor;
  • Java EE Security API definește gestionarea utilizatorului, parolei, grupului și autentificării.

Specificații pentru interacțiunea cu baza de date

Această categorie conține tehnologiile care permit persistența datelor într-o bază de date relațională. Componentele acestei categorii pot fi folosite și în afara unui runtime de referință.

Implementări certificate

Există mai multe runtime de referință open source, care sunt adesea utilizate în mediul de producție.

Printre cele open source se numără:

  • GlassFish , este implementarea de referință, întreținută de Oracle. Există o versiune care are suport comercial și se numește Payara
  • WildFly , cunoscut anterior sub numele de JBoss
  • Apache TomEE , din care există o versiune acceptată comercial numită Tomitribe

Dintre cele comerciale, pe lângă cele enumerate mai sus:

  • Cosminexus de la Hitachi;
  • InforSuite de către InforBus;
  • Serverul de aplicații interetape Fujitsu;
  • Jeus de TmaxSoft;
  • WebLogic-ul Oracle;
  • WebOTX al NEC;
  • WebSphere IBM;

Microservicii și Eclipse MicroProfile

Eclipse MicroProfile este un proiect pentru inovarea specificațiilor Java EE și pentru a le face mai potrivite pentru o arhitectură microservice, numită și arhitectură microservice [3] . Ideea este de a rula doar componentele Java EE care sunt strict necesare pentru aplicația dezvoltată.

Printre implementările disponibile, găsim:

  • WildWly Swarm [4]
  • Open Liberty [5]
  • TomEE [6]
  • Payara Micro [7]
  • kumuluzEE [8]

Critici

În decembrie 2016, Gartner a spus într-un raport că întreprinderile IT au nevoie de noi funcții și funcționalități și că Java EE nu a reușit să țină pasul. Raportul a recomandat dezvoltarea unei strategii de gestionare a caducității Java EE. Se așteaptă ca până în 2019, mai puțin de 35% din aplicațiile de afaceri să fie rulate pe serverele de aplicații Java EE. La această critică a primit răspuns că Java EE continuă să evolueze și să dezvolte caracteristici care o fac mai slabă, folosind tehnologii precum MicroProfile, WildFly Swarm și Payara Micro. [9]

Alternative

Mai multe alte software oferă funcționalități similare, inclusiv:

  • Cadru de primăvară care are o funcționalitate extrem de similară cu cele din Java EE;
  • ASP.NET , care poate fi utilizat cu limbaje precum C # și Visual Basic.net;
  • Framework-ul Akka și Play , scris în Scala, poate fi utilizat și în Java;
  • Node.js , o platformă bazată pe evenimente pentru motorul JavaScript al browserului;
  • Vert.X, un set de instrumente pentru dezvoltarea de aplicații receptive pe JVM

Notă

  1. ^ Prezentarea profilului web Java EE
  2. ^ Întrebări frecvente despre Eclipse Enterprise for Java
  3. ^ Eclipse MicroProfile , pe microprofile.io . Adus pe 29 august 2017 .
  4. ^ WildFly Swarm , la wildfly-swarm.io . Adus pe 29 august 2017 .
  5. ^ Open Liberty , pe openliberty.io . Adus la 20 septembrie 2017 .
  6. ^ Seria Microservicii: MicroProfile și Apache TomEE , la javacodegeeks.com . Adus la 20 septembrie 2017 .
  7. ^ Payara Micro , la payara.fish . Adus la 20 septembrie 2017 .
  8. ^ kumuluzEE , la ee.kumuluz.com . Adus la 20 septembrie 2017 .
  9. ^ Este Raportul lui Gartner despre decesul Java EE foarte exagerat? , pe infoq.com . Adus pe 29 august 2017 .

Bibliografie

Elemente conexe

linkuri externe

Internet Portal internet : accesați intrările Wikipedia care se ocupă de internet