logo

Hvad er EJB

EJB er et akronym for enterprise java bean . Det er en specifikation leveret af Sun Microsystems til at udvikle sikrede, robuste og skalerbare distribuerede applikationer.

For at få information om distribuerede applikationer, besøg RMI tutorial først.

For at køre EJB-applikation skal du have en applikationsserver (EJB Container) såsom Jboss, Glassfish, Weblogic, Websphere osv. Den udfører:

  1. livscyklusstyring,
  2. sikkerhed,
  3. transaktionsstyring, og
  4. genstandspooling.

EJB-applikationen er installeret på serveren, så den kaldes også serversidekomponent.

EJB er ligesom COM ( Komponentobjektmodel ) leveret af Microsoft. Men det er forskelligt fra Java Bean, RMI og Web Services.


Hvornår bruger du Enterprise Java Bean?

  1. Applikationen har brug for fjernadgang . Det er med andre ord fordelt.
  2. Applikationen skal være skalerbar . EJB-applikationer understøtter belastningsbalancering, clustering og fail-over.
  3. Applikationen har brug for indkapslet forretningslogik . EJB-applikation er adskilt fra præsentation og vedvarende lag.

Typer af Enterprise Java Bean

Der er 3 typer enterprise bean i java.

Session Bean

Sessionsbean indeholder forretningslogik, der kan påberåbes af lokal-, fjern- eller webserviceklient.

Message Driven Bean

Ligesom Session Bean indeholder den forretningslogikken, men den påkaldes ved at sende besked.

Entity Bean

Det indkapsler den tilstand, der kan bevares i databasen. Det er forældet. Nu er det erstattet med JPA (Java Persistent API).


Forskellen mellem RMI og EJB

Både RMI og EJB leverer tjenester til at få adgang til et objekt, der kører i en anden JVM (kendt som fjernobjekt) fra en anden JVM. Forskellene mellem RMI og EJB er angivet nedenfor:

RMIEJB
I RMI skal middleware-tjenester såsom sikkerhed, transaktionsstyring, objektpooling osv. udføres af java-programmøren.I EJB leveres middleware-tjenester automatisk af EJB Container.
RMI er ikke en komponent på serversiden. Det er ikke nødvendigt at være installeret på serveren.EJB er en komponent på serversiden, den skal installeres på serveren.
RMI er bygget på toppen af ​​socket-programmering.EJB-teknologi er bygget på toppen af ​​RMI.

EJB og Webservice

I EJB skal både bønnekomponent og bønneklient være skrevet på java-sprog.

Hvis bønneklient skal skrives på andet sprog som f.eks .net , php osv. skal vi gå med webtjenester (SÆBE eller HVILE). Så EJB med webservice vil være en bedre løsning.


Ulemper ved EJB

  1. Kræver applikationsserver
  2. Kræver kun java klient. For andre sprogklienter skal du gå efter webservice.
  3. Kompleks at forstå og udvikle ejb-applikationer.