Java EE (aiemmin nimellä Java 2 Platform, Enterprise Edition , lyhennettynä J2EE) on kokenut monia muutoksia ensimmäisen version jälkeen.
Vuonna 1998 Sun Microsystems julkisti JPE:n (Java Platform for the Enterprise) , joka sisältää EJB 1.0:n toteutuksen, yhteensopivuustestejä ja koodausohjeita [1] [2] .
12. joulukuuta 1999 julkaistiin J2EE 1.2 -spesifikaatio [3] .
Luettelo J2EE 1.2.1:een sisältyvistä teknisistä tiedoista:
24. syyskuuta 2001 J2EE 1.3 -spesifikaatio [4] julkaistiin . Tuki raskaan sarjan hajautetulle objektimallille ( RMI-IIOP/CORBA ) julkistettiin XML :n hyväksi . Lisätty JavaServer Pages Standard Tag Library (JSTL), Java Authentication and Authorization Service (JAAS) ja J2EE Connector Architecture.
Luettelo J2EE 1.3 -määrityksistä:
11. marraskuuta 2003 julkaistiin J2EE 1.4 [5] [6] . Versio 1.4 lisäsi tuen XML-pohjaisille verkkopalveluille vastauksena verkkopalvelujen tuloon. Komponenttipohjainen JavaServer Faces (JSF) -tekniikka on lisätty korvaamaan JSP.
Tekniikka | Versio | JSR koodi |
---|---|---|
Verkkopalveluiden tekniikat: | ||
Verkkopalvelut J2EE 1.1:lle | 1.0 | |
Java API for XML Processing (JAXP) | 1.2 | JSR 206 |
Java API XML-pohjaiselle RPC:lle (JAX-RPC) | 1.1 | |
Java API XML-rekistereille (JAXR) | 1.0 | |
Tekniikat verkkosovelluksiin: | ||
Java servlet | 2.4 | JSR 154 |
Java-palvelinsivut (JSP) | 2.0 | JSR 152 |
JavaServer Pages Standard Tag Library (JSTL) | 1.1 | JSR 52 |
JavaServer Faces (JSF) | 1.1 | JSR 127 |
Tekniikat yrityssovelluksiin: | ||
Enterprise JavaBeans (EJB) | 2.1 | JSR 153 |
J2EE-liitinarkkitehtuuri | 1.5 | JSR 112 |
Java Message Service API (JMS) | 1.1 | JSR 914 |
Java Transaction API (JTA) | 1.0 | JSR 907 |
JavaMail API | 1.3 | JSR 919 |
JavaBeans Activation Framework (JAF) | 1.0 | JSR 925 |
Tietoturvan ja sovellusten hallinnan tekniikat: | ||
Java Authorization Service Provider Contract for Containers (JACC) | 1.0 | |
Java Management Extensions (JMX) | 1.2 | JSR 3 |
Enterprise Edition Management API | 1.0 | |
Enterprise Edition Deployment API | 1.1 |
11. toukokuuta 2006 Java EE 5 -spesifikaatio [7] julkaistiin . Erittelyn aiempien versioiden valitettiin olevan vaikeita käyttää, kun taas kevyitä kehyksiä, kuten Spring , Struts ja Hibernate , oli olemassa ja käytettiin , J2EE nimettiin uudelleen Java EE 5:ksi ja julkaistiin Java SE 1.5:n kanssa. EJB:tä yritettiin optimoida korvaamalla Beans JPA:lla. Lisäksi lisättiin tuki Java API for XML-pohjaisille verkkopalveluille (JAX-WS) ja SOAP with Attachments API for Java (SAAJ), kuten ennen tekstin asynkronista ja myöhemmin binaarista, tekstisynkronista, joka pystyy korvaamaan RMI-IIOP :n. .
Tekniikka | Versio | JSR |
---|---|---|
Verkkopalveluiden tekniikat: | ||
Web palvelut | 1.2 | JSR 109 |
Java API XML-pohjaisille verkkopalveluille (JAX-WS) | 2.0 | JSR 224 |
Java-arkkitehtuuri XML-sidokseen (JAXB) | 2.0 | JSR 222 |
Web Service Metadata Java-alustalle | 2.0 | JSR 181 |
Java API XML-pohjaiselle RPC:lle (JAX-RPC) | 1.1 | JSR 101 |
Java API XML-rekistereille (JAXR) | 1.0 | JSR 93 |
SOAP with Attachments API for Java (SAAJ) | 1.3 | JSR 67 |
Streaming API for XML (StAX) | 1.0 | JSR 173 |
Tekniikat verkkosovelluksiin: | ||
Java servlet | 2.5 | JSR 154 |
JavaServer Faces (JSF) | 1.2 | JSR 252 |
Java-palvelinsivut (JSP) | 2.1 | JSR 245 |
JavaServer Pages Standard Tag Library (JSTL) | 1.2 | JSR 52 |
Vianetsintätuki muille kielille | 1.0 | JSR 45 |
Tekniikat yrityssovelluksiin: | ||
Enterprise JavaBeans (EJB) | 3.0 | JSR 220 |
Java Persistence API (JPA) | 1.0 | |
Java EE -liitinarkkitehtuuri | 1.5 | JSR 112 |
Java-alustan yleiset huomautukset | 1.0 | JSR 250 |
Java Message Service API (JMS) | 1.1 | JSR 914 |
Java Transaction API (JTA) | 1.1 | JSR 907 |
JavaMail API | 1.4 | JSR 919 |
JavaBeans Activation Framework (JAF) | 1.1 | JSR 925 |
Tietoturvan ja sovellusten hallinnan tekniikat: | ||
Java Authorization Service Provider Contract for Containers (JACC) | 1.1 | JSR 115 |
J2EE-sovellusten käyttöönotto | 1.2 | JSR 88 |
J2EE hallinta | 1.1 | JSR 77 |
10. joulukuuta 2009 julkaistiin Java EE 6 -spesifikaatio [9] [10] [11] [12] . Tässä julkaisussa yritettiin sisällyttää ja standardoida Spring Frameworkin käsitteitä ja ominaisuuksia . SOAP with Attachments API for Java (SAAJ) on nyt täysi osa Java SE 6 :ta [13] . Java API for RESTful Web Services (JAX-RS) on nyt täysi osa Java EE: tä [14] tästä julkaisusta lähtien . Myös DI, AOP ja muut Springin konseptit standardisoitiin, kontekstit ja riippuvuuden lisäys (CDI), riippuvuusinjektio (DI), papujen validointi , hallitut pavut ja sieppaajat standardisoitiin.
Java EE 6:ssa otettiin käyttöön profiilin käsite, joka sisältää alustan konfiguroinnin tietystä luokasta tai sovelluksesta riippuen. Web Profile sisältää myös täyden pinon teknologioita tilojen esittämiseen ja hallintaan ( JSF ja JSP ), verkkosäiliön ydintoimintoja ( servlet ), liiketoimintalogiikkaa ( EJB Lite), tapahtumia ( JTA ), tilan tallennusta ( JPA ) ja muuta.
Java EE 6 on aloittanut vanhentuneen koodin ja käyttämättömien sovellusliittymien puhdistusprosessin .
Tekniikka | Versio | JSR | Sisältyy verkkoprofiiliin |
---|---|---|---|
Verkkopalvelutekniikat: | |||
Java-sovellusliittymä RESTful Web Services -palveluille (JAX-RS) | 1.1 | JSR 311 | |
Web palvelut | 1.3 | JSR 109 | |
Java-sovellusliittymä XML-pohjaisille verkkopalveluille (JAX-WS) | 2.2 | JSR 224 | |
Java-arkkitehtuuri XML- sidokseen (JAXB) | 2.2 | JSR 222 | |
Javalle | 2.1 | JSR 181 | |
Java API XML-pohjaiselle RPC:lle (JAX-RPC) | 1.1 | JSR 101 | |
Java-sovellusliittymät XML-viestintälle (JAXM) | 1.3 | JSR 67 | |
Java API XML-rekistereille (JAXR) | 1.0 | JSR 93 | |
Tekniikat verkkosovelluksiin: | |||
Java servlet | 3.0 | JSR 315 | Joo |
JavaServer Faces (JSF) | 2.0 | JSR 314 | Joo |
Java-palvelinsivut (JSP) | 2.2 | JSR 245 | Joo |
Ilmaisukieli (EL) | 2.2 | Joo | |
JavaServer Pages Standard Tag Library (JSTL) | 1.2 | JSR 52 | Joo |
Vianetsintätuki muille kielille | 1.0 | JSR 45 | Joo |
Tekniikat yrityssovelluksiin: | |||
Enterprise JavaBeans (EJB) | 3.1 | JSR 318 | Lite |
Java Persistence API (JPA) | 2.0 | JSR 317 | Joo |
Contexts and Dependency Injection for Java (CDI) | 1.0 | JSR 299 | Joo |
Dependency Injection Javalle | 1.0 | JSR 330 | Joo |
validointi | 1.0 | JSR 303 | Joo |
hoidetut pavut | 1.0 | JSR 316 | Joo |
Sieppaajat | 1.1 | JSR 318 | Joo |
Java EE -liitinarkkitehtuuri | 1.6 | JSR 322 | |
Java-alustan yleiset huomautukset | 1.1 | JSR 250 | Joo |
Java Message Service API (JMS) | 1.1 | JSR 914 | |
Java Transaction API (JTA) | 1.1 | JSR 907 | Joo |
JavaMail API | 1.4 | JSR 919 | |
Tietoturvan ja sovellusten hallinnan tekniikat: | |||
Java Authentication Service Provider Interface for Containers (JASPIC) | 1.0 | JSR 196 | |
Java Authorization Service Provider Contract for Containers (JACC) | 1.4 | JSR 115 | |
Java EE -sovellusten käyttöönotto | 1.2 | JSR 88 | |
hallinta | 1.1 | JSR 77 |
Aluksi erittelyn piti kulkea numerolla JSR 313 (englanniksi) , mutta se peruutettiin; myöhemmin aloitettiin spesifikaation kehittäminen nykyisellä numerolla JSR 316 (eng.) .
Kehitys aloitettiin kiistanalaisen äänestyksen jälkeen: 14 ääntä puolesta (87,5 %), 1 vastaan (6,25 %, Apache ) [15] ja 1 tyhjää (6,25 % Borland ). Osallistujat ottivat esille Sun Microsystemsin lisenssiehtoihin liittyviä kysymyksiä [16] .
12. kesäkuuta 2013 Java EE 7 -spesifikaatio [17] [18] julkaistiin . HTML5 -trendin vuoksi spesifikaatioon lisättiin Java API WebSocketille , Java API for JSON Processing , asynkroniset servletit ja ei- esto NIO , mikä johti Playn luomiseen . Big data trendin yhteydessä Java EE:hen on lisätty Batch Applications for the Java .
Tekniikka | Versio | JSR | Sisältyy verkkoprofiiliin |
---|---|---|---|
Tekniikat verkkosovelluksiin: | |||
Java API WebSocketille | JSR 356 | Joo | |
Java API JSON-käsittelyä varten | JSR 353 | Joo | |
Java servlet | 3.1 | JSR 340 | Joo |
JavaServer Faces (JSF) | 2.2 | JSR 344 | Joo |
Unified Expression Language (EL) | 3.0 | JSR 341 | Joo |
Java-palvelinsivut (JSP) | 2.3 | JSR 245 | Joo |
JavaServer Pages Standard Tag Library (JSTL) | 1.2 | JSR 52 | Joo |
Tekniikat yrityssovelluksiin: | |||
Eräsovellukset Javalle | JSR 352 | ||
Samanaikaisuuden apuohjelmat Java EE:lle | 1.0 | JSR 236 | |
Contexts and Dependency Injection for Java (CDI) | 1.1 | JSR 346 | Joo |
Dependency Injection Javalle | 1.0 | JSR 330 | Joo |
validointi | 1.1 | JSR 349 | Joo |
hoidetut pavut | 1.0 | JSR 316 | Joo |
Enterprise JavaBeans (EJB) | 3.2 | JSR 345 | Joo |
Sieppaajat | 1.2 | JSR 318 | Joo |
Java EE -liitinarkkitehtuuri | 1.7 | JSR 322 | |
Java Persistence API (JPA) | 2.1 | JSR 338 | Joo |
Java-alustan yleiset huomautukset | 1.2 | JSR 250 | Joo |
Java Message Service API (JMS) | 2.0 | JSR 343 | |
Java Transaction API (JTA) | 1.2 | JSR 907 | Joo |
JavaMail API | 1.5 | JSR 919 | |
Verkkopalvelutekniikat: | |||
Java-sovellusliittymä RESTful Web Services -palveluille (JAX-RS) | 2.0 | JSR 339 | Joo |
Enterprise Web Services -palvelun käyttöönotto | 1.4 | JSR 109 | |
Java-sovellusliittymä XML-pohjaisille verkkopalveluille (JAX-WS) | 2.2 | JSR 224 | |
Javalle | JSR 181 | ||
Java API XML-pohjaiselle RPC:lle (JAX-RPC; valinnainen) | 1.1 | JSR 101 | |
Java-arkkitehtuuri XML- sidokseen (JAXB) | 2.2 | JSR 222 | |
Java API XML-rekistereille (JAXR) | 1.0 | JSR 93 | |
Sovellusturva- ja hallintateknologiat: | |||
Java Authentication Service Provider Interface for Containers (JASPIC) | 1.1 | JSR 196 | |
Java Authorization Service Provider Contract for Containers (JASPCC) | 1.5 | JSR 115 | |
Java EE -sovellusten käyttöönotto (valinnainen) | 1.2 | JSR 88 | |
Java EE | 1.1 | JSR 77 | |
Vianetsintätuki muille kielille | 1.0 | JSR 45 | Joo |
Tekniset tiedot Java EE:stä, joka on siirretty Java SE:hen: | |||
Java-arkkitehtuuri XML- sidokseen (JAXB) | 2.2 | JSR 222 | |
Java API for XML Processing (JAXP) | 1.3 | JSR 206 | |
Java-tietokantayhteys | 4.0 | JSR 221 | |
Java Management Extensions (JMX) | 2.0 | JSR 3 | |
JavaBeans Activation Framework (JAF) | 1.1 | JSR 925 | |
Java-sovellusliittymät XML- | 1.3 | JSR 67 | |
Streaming API for XML (StAX) | 1.0 | JSR 173 |
21. syyskuuta 2017 julkaistiin Java EE 8 -spesifikaatio [19] [20] [21] . Java EE on tullut Eclipse Foundationin hallintaan , [22] ja se on myös ollut avoimen lähdekoodin [23] . Eclipse perustuu Java EE:hen Eclipse Enterprise for Java (EE4J) [24] . Tämän julkaisun tavoitteena on parantaa HTML5 -tukea ja HTTP/2 -perustukea, yksinkertaistaa Managed Beansin integrointia , parantaa pilvisovellusten infrastruktuuria ja laajentaa Java EE -teknologioiden valikoimaa verkkoon ja pilviin.