Java EE architectuur


  Share  
|

De Java EE Application Program Interface (API) bestaat uit een reeks van technologische componenten en diensten die worden gebruikt om enterprise applicaties te bouwen. Het bevat componenten die kunnen worden gebruikt om de presentatie en de business logica te bouwen, API's voor het beheer van zakelijke transacties, veiligheid en infrastructuur hulpmiddelen om de toepassing operationele omgeving te ondersteunen, en hulpmiddelen voor zowel interne als externe integratie. Het volgende is een lijst van belangrijke technologieën van Java EE.

Enterprise Applications en Transacties

Componenten Servlet, JavaServer Pages (JSP), Java Server Faces (JSF), en EJB zijn server-side componenten die worden gebruikt voor de presentatie logica en business logica te definiëren.

HTTP De HTTP client-side API is verstrekt door de java.net pakket en de HTTP-server-side API is gedefinieerd met gebruikmaking servlets en JSP.

Dezelfde HTTPS HTTP-protocol loopt over het SSL-protocol door dezelfde client en server-API.

JavaMail De mail API biedt een applicatie-niveau interface voor applicatie componenten van Internet e-mails.

Java Transaction (JTA) API JTA De API is bedoeld om de transactie af te bakenen grenzen tussen de houder en de toepassing uit te voeren gedistribueerde transactionele toepassingen.

Java Naming and Directory Interface (JNDI) JNDI API biedt een interface op applicatie-niveau om de toegang naming en directory services, evenals een dienstverlener interface voor u een aanbieder van een naming and directory service.

JavaBeans Activation Framework (JAF) JAF biedt een kader voor de verwerking van gegevens in verschillende Multipurpose Internet Mail Extension (MIME) typen, van oorsprong in verschillende formaten en locaties.

Veiligheidsdiensten
Java Authenticatie en Autorisatie Service (JAA) Log in context voor de authenticatie en machtiging van de service aanvrager.

Java Autorisatie Service Provider Contract voor Container (JACC) Contract tussen een Java EE applicatie server en een vergunning dienstverlener.

Java Secure Socket Extension (JSSE) API voor Secure Socket Layer die sessie zekerheid biedt voor de vertrouwelijkheid van gegevens, data-integriteit en server authenticatie.

Java Cryptography Architecture (JCA) een fundamenteel kader voor de toegang tot en de ontwikkeling van cryptografische functionaliteit.

Java Crypto Services (JCE) Cryptographic kader met geavanceerde cryptografische functies ter ondersteuning van meerdere cryptografische dienstverleners.

CertPath of Certification Path API voor het maken, bouwen en valideren van digitale certificatie paden.

Java Generic Security Services Application Program Interface (JGSS) API voor uniforme toegang tot veiligheidsdiensten bovenop een verscheidenheid aan onderliggende mechanismen voor de veiligheid, met inbegrip van Kerberos, die zijn bouwstenen voor single sign-on en data-encryptie.

Integratie en interoperabiliteit
Java Message Service (JMS) JMS levert betrouwbare messaging voor zowel point-to-point en publiceren-subscribe messaging-georiënteerde diensten.

Remote Method Invocation via het Internet Inter-ORB Protocol (RMIIIOP) De API biedt externe gesprekken via het Java RMI over IIOP, die kan CORBA objecten of diensten toegang vanaf een Java-applicatie direct KMI.

Java Interface Description Language (IDL) Java IDL kan een Java EE applicatie op te treden als een CORBA cliënt aan externe CORBA objecten met behulp van de IIOP protocol te roepen.

JDBC API JDBC API biedt connectiviteit met de back-end database systemen, die verbinding, aansluiting bundeling omvat, en gedistribueerde database services.

Java EE Connector Architecture Connector Architecture is een dienstverlener interface waarmee bron adapters aangesloten op Enterprise Information Systems (EIS) of legacy-systemen worden aangesloten op elke Java EE service componenten.

Web Services API Dit omvat ondersteuning voor synchrone Web services (Java API for XML-RPC, of JAX-RPC), asynchrone webservices (SOAP met bijlagen API voor Java of SAAJ), en de toegang tot het register XML-servers (Java API voor XML-registers, of JAXR). JAXP biedt een standaard manier om XML documenten te parsen en deze met behulp van stylesheets te transformeren. Java EE 5.0 voegt eenvoudiger en bredere ondersteuning voor webservices door de invoering van JAX-WS 2.0 (opvolger van JAX-RPC) en JAXB 2.0.

Management
Java Management Extensions (JMX) De JMX API vangt toepassing evenementen en uitzonderingen voor applicatie-level systeem beheer en diagnose.

Java EE technologie ondersteunen een verscheidenheid aan klanten, voor exampleJava EE: applet, Java ME-client (of mobiele apparaten), en de toepassing clients (browsers en rijke klanten). Deze klanten kunnen toegang tot de verschillende componenten van diensten die door de Java EE via HTTP-protocol of beveiligde HTTPS-protocol met behulp van Secure Socket Layer (SSL) of Transport Layer Security (TLS). De Java EE bestaat uit de Web Container (meestal uitgevoerd als een Web-server) en de Enterprise Java Bean (EJB) Container (meestal uitgevoerd als een applicatie server). A. NET client kan ook u verzoeken op het web container of de EJB Container via een verscheidenheid van interoperabiliteit opties zoals Web services (die samenwerken met JAX-RPC) en een brug (die interoperabel met RMI-IIOP).

Building Interoperabele Componenten
Servlets, JSP, EJB's en JSFs zijn programmeertaal elementen die kunnen worden gebruikt om herbruikbare componenten te bouwen voor interfunctionele met. NET of andere platformen. Servlets en JSP's worden meestal gecategoriseerd als Web-onderdelen, als zij worden beheerd in een Web Container. Zo kunnen ze creëren webservices die kunnen uitwisselen zakelijke gegevens synchroon of asynchroon met. NET-toepassingen. EJB's worden gecategoriseerd als EJB onderdelen, als zij worden beheerd in een EJB container. Zo kunnen ze samenwerken met een. NET-toepassing met behulp van een RMI-IIOP brug. De onderliggende Java EE diensten zijn verantwoordelijk voor het onderliggende systeem diensten en infrastructuur functies bieden voor het web tier (of Web container) of business tier (of EJB Container) componenten, terwijl Interoperatie met een. NET applicatie. Bijvoorbeeld, RMI / IIOP communicatie dienst nodig wanneer een RMI-IIOP brug integratie strategie wordt gebruikt.

Hieronder volgt een korte beschrijving van deze elementen programmeertaal en de onderliggende Java EE diensten:

Servlets
Servlets zijn server-side Java-programma dat proces business logica en behandelen HTTP-verzoeken en antwoorden. Een typisch servlet is een Java-klasse die HttpServlet uitstrekt. Wanneer de klant een service verzoek indient, een servlet ontvangt een HTTP-verzoek (HttpServletRequest) en een HTTP-respons (HttpServletResponse) in de parameters met behulp van de doget methode. Gegevens resultaten of berichten kunnen worden weergegeven als een HTML-pagina door het drukken HTML-tags van teksten en gegevens, bijvoorbeeld, out.println ( "

Hello World, Java EE. NET Interoperability

).

Servlets zal worden ingezet om een "context" (een virtuele naam voor de omvang van de servlets) op de lokale host, bijvoorbeeld myContextRoot, en kan worden ingeroepen via de URL http://localhost:8080/myContextRoot/myServlet waar myServlet is de naam van de servlet. Het bestand web.xml informatie opgeslagen over de servlet configuratie, waar de feitelijke Java-klasse zal worden gerelateerd aan een fysieke Java-klasse naam (in dit voorbeeld, myServletClass) en het URL-patroon (bijvoorbeeld / myContextRoot). De web.xml bestand is een bestand inzet, opgeslagen in de. / WEB-INF directory van de webserver of applicatie server.

JSP
JSP is een Java scripting taal die dynamisch worden verzameld in een servlet (en weer opnieuw opgesteld voor eventuele wijzigingen intelligent), en de cache voor betere prestaties tijdens de uitvoering. Een typisch JSP kan bestaan uit de volgende elementen:

Statische HTML-inhoud Dit is een normaal HTML document, waar de JSP compiler niet nodig compilatie.

Scripting Elementen Dit zijn eenvoudige Java-codes die zijn ontworpen om de presentatie logica, behandelen in plaats van business logica.

JSP richtlijnen Dit zijn instructies voor de JSP compiler te verwerken, bijvoorbeeld voor de invoer Java-klassen in de pagina of naar een speciale behandeling instructies geven voor de pagina wanneer ingeroepen.

JSP Acties Acties zijn tags die de controle van de runtime-gedrag van JSP en het beheer van de antwoorden terug naar de client. Standard acties omvatten useBean (instantiëren en gebruik de JavaBeans in de JSP) omvatten (een bestand wanneer de JSP wordt verzocht omvatten), setProperty (set eigendom van de JavaBeans), getProperty (get eigendom van de JavaBeans), param (voorzien de naam en de waarde van de parameter als aanvullende informatie), forward (vooruit de indiener naar een nieuwe pagina), en plugin (genereren client browser-specifieke HTML-tags die resulteren in een beroep op de Java Plug-in software-codes).

JSP Taglibs Taglibs zijn XML-achtige custom tags met optionele attributen en organen voor een JSP. Ze kunnen gebruikt worden om eenvoudige data-transformatie, filteren het uitvoeren van bepaalde gegevens de inhoud, of de complexiteit van de toegang tot gegevens bronnen en andere Java-objecten te verbergen. Met behulp van Taglibs kan de logica van het verwerken meer gestructureerde en makkelijker te onderhouden in een JSP en kan worden opgenomen in een JSP door toevoeging van een JSP-richtlijn <% @ taglib uri = "/ myTag" prefix = "mijnNamespace"%>. Het voorvoegsel geeft een tag bibliotheek tem (bijvoorbeeld mijnTags.tld). De werkelijke Java-klasse wordt verwezen in de web.xml taglib met de naam en het fysieke URI locatie.

JSF
JSF is een ontwerp-specificatie (http://java.sun.com/javaee/javaserverfaces) voor nieuwe gestandaardiseerde componenten gebruikersinterface die pagina staat, toepassing evenementen, input validatie beheren, en pagina-navigatie en ter ondersteuning van internationalisatie en toegankelijkheid. Het verhoogt JSP technologie door een interface naar de aangepaste tag bibliotheek binnen een JSP-pagina. Het is ook een goed hulpmiddel ter ondersteuning van een Model-View-Controller architectuur zoals Struts.

EJB
EJB's zijn herbruikbare componenten die kapselen business logica. Zij maken gebruik van de container diensten die het beheer van de levenscyclus van het Business Objects, opereren de naamgeving dienst en bieden transactieverwerking (bijvoorbeeld het aansluiten van meerdere gegevensbronnen), veiligheid mechanismen (bijvoorbeeld het identificeren van de opdrachtgevers en de gebruikers) , en persistentie mechanismen.

Er zijn drie soorten EJB's:

Session Beans Sessie bonen aanduiding van een gesprek tussen de client applicatie en de remote service component. Wanneer een cliënt vraagt om een zakelijke dienstverleners met een beroep op een externe dienst component, de sessie boon (de externe component) antwoorden. Een stateful session bean kan bepalen aanhouden de zitting staat van de interacties of aanroepingen tussen de klant en de externe dienst componenten. Als de sessie staat is behouden, kan de stateful session boon een beter beheer van de transactie integriteit of te hervatten na de sessie niet over. Dit wordt meestal bereikt door het gebruik van de container diensten zoals Java en Java serialization reflectie. Een staatloze sessie boon niet aanhouden van de sessie staat.

Entity Entity Beans bonen synchroniseren de staat met een volharding gegevens op te slaan met behulp van de container diensten. Met andere woorden, zakelijke gegevens worden voortduurt tot de back-end database betrouwbaar en veilig gebruik entiteit bonen. Als ontwikkelaars expliciet aangeven hoe het ontwerp en zakelijke gegevens moeten worden volhardde in de database, dan is de entiteit boon wordt gezegd dat bean-managed persistence. Als ontwikkelaars gebruik maken van de container instrumenten, die worden verstrekt door de leverancier van applicatie-server, om het object-relational mapping beheren van de entiteit boon tot de onderliggende relationele database, dan is de entiteit boon wordt gezegd dat het container-managed persistence.

Message Driven Beans (MDB) MDBs toestaan dat een EJB ontvangen een Java Message Service (JMS). Met andere woorden, een EJB kan het doelwit van een JMS bericht. Dit kan brengen van de voordelen van betrouwbare, asynchrone levering van informatie van de klant met behulp van JMS naar de server met behulp van EJBor vice versa. Bovendien kan eenvoudig worden MDB interoperabel met andere Java EE onderdelen met behulp van messaging en EJB.

Java EE 5.0 introduceert EJB 3.0, die annotatie gebruikt (@ Stateless, @ EJB) aan de ontwikkeling complexiteit en de inspanningen bij de opbouw van EJB's te vereenvoudigen.

Ondersteunende diensten voor interoperabiliteit
Java EE-containers voorzien gemeenschappelijke diensten die worden gedeeld door Java EE componenten. Deze systeem diensten functies voor database-connectiviteit, transactie management, naming service, communicatie en connectiviteit, en messaging.

Database Connectivity dienst JDBC.

Transactie management service JTA.

Naming Service JNDI.

Communicatie en connectiviteit diensten HTTP-, HTTPS, SSL, RMI / IIOP.

Messaging service JMS, JavaMail.

Onder deze Java EE diensten, de communicatie en connectiviteit diensten van cruciaal belang aan de ondersteuning van Java EE. NET interoperabiliteit met behulp van de brug technologie (zoals RMI / IIOP brug). De Messaging dienst wordt vaak gebruikt voor synchrone en asynchrone webservices integratie strategie. Bijvoorbeeld SAAJ vereist JavaMail te documenteren bijlagen behandelen.

Deploying Java EE Applications
Java EE applicaties zijn meestal verpakt en wordt ingezet in een of meerdere eenheden in EAR bestandsformaat. Een EAR bestand (afgebeeld in de META-INF/application.xml bestand) bestaat uit EJB componenten in JAR-bestanden (META-INF/ejb-jar.xml), Web-modules in WAR-bestanden (WEB-INF/web.xml), en Java-modules in JAR-bestanden (META-INF/application-client.xml). Veel applicatie server implementaties kunnen ontwikkelaars van Java EE applicaties implementeren door een van de volgende mechanismen:

Laten vallen van het EBW bestand in een auto-implementeren directory (bijvoorbeeld% AS_HOME% \ domains \ domain1 \ autodeploy in Sun Java System Application Server waarbij% AS_HOME% is de directory waar de applicatie server binaries wonen).

Met behulp van een ANT script te zetten (bijvoorbeeld, Sun Java System Application Server maakt gebruik van een aangepaste ANT script genaamd asant).

Met behulp van een Web-beheerconsole te implementeren.

Met behulp van een command line interface (bijvoorbeeld asadmin implementeren in Sun Java System Application Server).

Met behulp van een IDE zoals NetBeans te implementeren.

Beheer van de toegangsrechten voor de beveiliging is zeer belangrijk voor de toepassing implementatie. De zekerheid rol is gedefinieerd in de application.xml bestand, dat is een declaratieve beveiligingsfunctie van de Java EE architectuur. Een aanvraag Deployment Tool kopieert alle bestanden naar de EAR Java EE applicatie-server, het genereren van de nodige uitvoering klassen en help documentatie, en implementeren van de applicatie EAR bestanden naar de map van de inzet Java EE applicatie server. Na dat, architecten en ontwikkelaars moeten configureren van de applicatie server-specifieke informatie, zoals het maken van databronnen en de aansluiting fabrieken en beheren JMS queue namen.

een artikel afkomstig van Blerick Tawman


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions