Che cosa è Java EE? [duplicato]


Questa domanda ha già una risposta qui:

Mi rendo conto che letteralmente si traduce in Java Enterprise Edition. Ma quello che sto chiedendo è che cosa significa veramente? Quando un'azienda richiede esperienza Java EE, cosa stanno realmente chiedendo? Esperienza con EJBs? Esperienza con le app web Java?

Sospetto che questo significhi qualcosa di diverso per persone diverse e la definizione è soggettiva.

Author: halfer, 2008-09-20

9 answers

Java EE è in realtà una raccolta di tecnologie e API per la piattaforma Java progettata per supportare applicazioni "Enterprise" che possono generalmente essere classificate come applicazioni su larga scala, distribuite, transazionali e altamente disponibili progettate per supportare i requisiti aziendali mission-critical.

In termini di ciò che un dipendente sta cercando in tecnici specifici, è abbastanza difficile da dire, perché il campo di gioco ha continuato a cambiare negli ultimi cinque anni. Si tratta davvero del classe di problemi che vengono risolti più di ogni altra cosa. Le transazioni e la distribuzione sono fondamentali.

 128
Author: Toby Hede, 2017-08-02 14:23:49

Java EE è una raccolta di specifiche per lo sviluppo e la distribuzione di applicazioni aziendali.

In generale, le applicazioni aziendali si riferiscono al software ospitato su server che forniscono le applicazioni che supportano l'azienda.

Le specifiche (definite da Sun) descrivono servizi, API (Application Programming Interface) e protocolli.

Le 13 tecnologie di base che compongono Java EE sono:

  1. JDBC
  2. JNDI
  3. EJB
  4. RMI
  5. JSP
  6. Servlet Java
  7. XML
  8. JMS
  9. IDL Java
  10. JTS
  11. JTA
  12. JavaMail
  13. JAF

Il provider di prodotti Java EE è in genere un fornitore di applicazioni, server Web o sistemi di database che fornisce classi che implementano le interfacce definite nelle specifiche. Questi fornitori competono sulle implementazioni di Java EE specifica.

Quando un'azienda richiede un'esperienza Java EE, ciò che sta realmente chiedendo è l'esperienza nell'utilizzo delle tecnologie che compongono Java EE. Spesso, una società utilizzerà solo un sottoinsieme delle tecnologie Java EE.

 204
Author: user19685, 2016-05-15 14:06:05

J(2)EE, in senso stretto, è un insieme di API s (come l'attuale risposta principale lo ha) che consentono a un programmatore di costruire sistemi transazionali distribuiti. L'idea era di astrarre i complicati bit transazionali distribuiti (che sarebbero stati implementati da un contenitore come WebSphere o Weblogic), lasciando il programmatore a sviluppare una logica di business libera da preoccupazioni sui meccanismi di archiviazione e sincronizzazione.

In realtà, era un cobbled-together, design-by-committee mish-mash, che è stato spinto più o meno a beneficio di fornitori come IBM, Oracle e BEA in modo da poter vendere ridicolmente over-complicato, over-engineered, over-prodotti inutili. Che non aveva le funzionalità di base (come la pianificazione)!

J2EE era un costrutto di marketing.

 34
Author: oxbow_lakes, 2008-10-23 22:43:46

Esistono 2 versioni degli ambienti Java, J2EE e Se. SE è l'edizione standard, che include tutte le classi di base di cui avresti bisogno per scrivere applicazioni per utente singolo. Mentre l'edizione Enterprise è impostata per applicazioni enterprise a più livelli o possibili applicazioni distribuite. Se si utilizzano server di app, come tomcat o websphere, si desidera utilizzare J2EE, con le classi extra per il supporto n-tier.

 21
Author: stephenbayer, 2008-09-20 02:37:02

Il suo significato cambia continuamente. Ha usato per significare Servlet e JSP e EJB. Ora-a-giorni probabilmente significa primavera e Ibernazione ecc.

In realtà quello che stanno cercando è l'esperienza e la comprensione dell'ecosistema Java, dei contenitori Servlet, JMS, JMX, Hibernate ecc. e come si incastrano tutti.

Anche i test e il controllo del codice sorgente sarebbero importanti.

 12
Author: macarthy, 2008-09-20 02:43:24

Sì, esperienza con EJB, applicazioni Web ( servlest e JSP ), transazioni, servizi Web, gestione e server delle applicazioni.

Significa anche, esperienza con l'applicazione di livello "enteprise", al contrario di applicazioni desktop.

In molte situazioni le applicazioni aziendali devono connettersi con un certo numero di sistemi legacy, non sono solo "pagine web", e con le funzionalità disponibili sulla "edizione" di java che tipo di connettività può essere risolto.

 7
Author: OscarRyz, 2008-09-20 02:38:42

J2EE tradizionalmente riferito ai prodotti e agli standard rilasciati da Sun. Ad esempio, se si stesse sviluppando un'applicazione Web J2EE standard, si utilizzerebbero EJB, Java Server Faces e in esecuzione in un server di applicazioni che supporta lo standard J2EE. Tuttavia, poiché esiste un'enorme pletora open source di librerie e prodotti che fanno lo stesso lavoro e (e molti discuteranno meglio) di queste offerte Sun, il significato quotidiano di J2EE è migrato in riferimento a anche questi (ad esempio una soluzione Spring/Tomcat/Hibernate) in molte menti.

Questo è un grande libro a mio parere che discute l'approccio 'open source' a J2EE http://www.theserverside.com/tt/articles/article.tss?l=J2EEWithoutEJB_BookReview

 3
Author: Peter, 2008-09-20 03:27:34

Direi che J2EE experience = esperienza approfondita con alcune tecnologie J2EE, conoscenza generale della maggior parte delle tecnologie J2EE e esperienza generale con il software aziendale in generale.

 3
Author: James A. N. Stauffer, 2008-09-20 18:25:25

Sembra che Oracle stia ora cercando di eliminare JSP (sostituire con Faces) ed emulare il RESTO di Spring (JAX-RS) e DI.

Rif: https://docs.oracle.com/javaee/7/firstcup/java-ee001.htm

Tabella 2-1 Tecnologie Java EE di livello Web


JavaServer affronta la tecnologia

Un framework di componenti dell'interfaccia utente per applicazioni Web che consente di includere componenti dell'interfaccia utente (come campi e pulsanti) in una pagina XHTML, chiamata pagina Facelets; convertire e convalidare i dati dei componenti dell'interfaccia utente; salvare i dati dei componenti dell'interfaccia utente in archivi dati lato server; e mantenere lo stato del componente

Linguaggio delle espressioni

Un insieme di tag standard utilizzati nelle pagine Facelets per fare riferimento ai componenti Java EE

Servlet

Classi di linguaggio di programmazione Java che elaborano dinamicamente le richieste e costruiscono le risposte, di solito per le pagine HTML

Contesti e iniezione di dipendenze per Java EE

Un insieme di servizi contestuali che rendono facile per gli sviluppatori utilizzare i bean aziendali insieme alla tecnologia JavaServer Faces nelle applicazioni Web

 0
Author: killjoy, 2016-03-17 20:59:43