5 Verantwoordelijkheden van de Enterprise JavaBean Container

5 Verantwoordelijkheden van de Enterprise JavaBean-container - dummies

Onderdeel van Enterprise JavaBeans For Dummies Cheat Sheet

De Enterprise JavaBeans (EJB) -container is verantwoordelijk voor het leveren van een aantal services aan uw EJB-programma's. De services die de EJB-container moet bieden, worden opgesomd door de Enterprise JavaBean-specificatie. Dat betekent dat u uw EJB kunt implementeren in elke container die aan de specificatie voldoet en het voordeel van alle verplichte services ontvangt. Die services bevatten de volgende hoofdfuncties:

  • EJB-containers bieden ondersteuning voor externe en lokale communicatie tussen uw EJB-componenten en clienttoepassingen. Dit gebeurt op een manier die voor u vrijwel transparant is, zodat u zich geen zorgen hoeft te maken over de manier waarop deze wordt geïmplementeerd wanneer u EJB-componenten ontwikkelt.

  • EJB-containers bieden pool - en cache -services aan EJB-componenten. Een pool is een opslagplaats voor ongebruikte EJB-componenten die op verzoek aan een klant worden geleverd. Een cache is een opslaggebied voor EJB-componenten die zijn toegewezen aan een clientprogramma, maar die momenteel niet worden gebruikt. Deze services minimaliseren de geheugenvereisten voor de EJB-container en bieden een uitstekende service aan het clientprogramma.

  • EJB-containers moeten beveiligingsdiensten bieden voor EJB-programma's. Wanneer u een toepassing implementeert, kunt u deze services configureren volgens de richtlijnen in de specificatie, maar u hoeft geen speciale programmering uit te voeren om deze te gebruiken.

  • EJB-containers moeten transactionele services voor EJB-programma's bieden. Transacties definiëren werkeenheden die allemaal moeten slagen of allemaal falen als een set. Transacties kunnen veel EJB-programma's bevatten, waaronder EJB-programma's die zich op externe computers bevinden. De transactiekenmerken van een EJB-container kunnen worden geconfigureerd wanneer uw EJB-toepassing wordt geïmplementeerd, maar vereisen weinig tot geen speciale programmering van u als EJB-ontwikkelaar.

  • EJB-containers bieden een transparante integratie tussen uw EJB-componenten en externe gegevensbronnen, zoals databases. Als ontwikkelaar hoeft u de opslag en het ophalen van gegevens uit een database niet te beheren, hoewel u ervoor kunt kiezen dit te doen als het aan uw behoeften voldoet.

De EJB-container biedt deze en andere functies volgens de regels die u definieert. Dit wordt declaratieve programmering genoemd. Declaratieve programmering is een mechanisme waarmee u de gewenste services in een XML-geformatteerd document kunt declareren.Dit XML-document wordt de implementatiedescriptor genoemd die wordt gebruikt met uw EJB-toepassing. De server leest de Deployment-descriptor en implementeert automatisch de services die u aanvraagt ​​volgens de regels die u declareert. De complexiteit van het implementeren van deze services is dus volledig verborgen terwijl u de mogelijkheid behoudt om de EJB-applicatie aan uw behoeften aan te passen.

Hoewel de EJB-specificatie veel van de opties definieert die u in de Deployment-descriptor kunt wijzigen, is het niet verboden dat EJB-containerleveranciers hun eigen aangepaste implementatiebeschrijvingen maken om bestaande configuratie-opties uit te breiden of om nieuwe opties toe te voegen. Alle containerverkopers bieden uitbreidingen voor de Deployment-descriptor; zij gebruiken deze uitbreidingen om de generieke descriptor van de EJB-implementatie te verbinden met containerspecifieke services. Hoewel deze extensies vaak essentieel zijn, zijn ze niet standaard en niet draagbaar. Ontwikkelaars van EJB-componenten zijn niet verantwoordelijk voor het werken met container-specifieke uitbreidingen van de Deployment-descriptor. De service is over het algemeen gereserveerd voor iemand die gespecialiseerde kennis heeft van het beheer van de EJB-container.