"Der er du."

"Jeg tænkte over det og besluttede at give dig en lille lektion mere, som vil være meget nyttig for dig. Indtil du arbejder som programmør, støder du sandsynligvis aldrig på en speciel terminologi, så jeg vil gerne introducere dig til flere almindelige begreber nu."

"For omkring 10 år siden blev E nterprise  J ava  B eans ( EJB ) meget brugt."

"Hvad betyder JavaBeans?"

"JavaBeans betyder i bund og grund kaffebønner (Java er en slags kaffe). Det er IT-humor."

"Et programs forretningslogik tog form af en gruppe objekter på højt niveau, eller bønner, som kunne udveksle beskeder, redde sig selv, finde hinanden ved navn og en hel masse mere. Normalt blev dette opnået gennem en særlig super- fancy forældreklasse, selvom der var andre tilgange. Sådanne objekters adfærd var stærkt reguleret."

"De tre mest berømte typer EJB bønner er:"

"En Entity Bean er en bean, hvis formål er at gemme bestemte data. Denne type bean har en indbygget mekanisme til at gemme sig selv og dens felter i en database. Denne type objekt kan ødelægges og derefter genskabes senere fra databasen. Men bortset fra at gemme data, har det ingen logik."

"En sessionsbønne er en funktionel bønne. Hver sessionsbønne har sin egen funktion. En gør én ting, og en anden gør noget andet. Sådanne bønner arbejder med andre objekter og bønner, ikke med deres egne data."

" Sessionsbønner er opdelt i to kategorier."

"En Stateless Session Bean er en bønne, hvis interne variabler ikke gemmer vigtige data, som den skal bruge for at fungere. Denne type bønne kan ødelægges og derefter genskabes, og den vil udføre sin funktion ligesom før."

"En Statefull Session Bean er en bean, der internt gemmer de data, den bruger, når den arbejder. Hvis vi kalder metoder på sådan en bean, så kan hvert efterfølgende kald bruge nogle af de data, der er sendt til beanen i tidligere kald. Alligevel er denne bean er ikke det samme som et almindeligt objekt."

"Men det var heller ikke så fantastisk at bruge bønner, så snart svingede pendulet i den modsatte retning. Og udviklere begyndte at bruge almindelige genstande oftere. De fandt endda på et særligt navn."

"En POJO er et almindeligt gammelt  J ava  - objekt . Disse objekter havde ingen superfunktioner og arvede ikke superobjekter. De var bare almindelige Java-objekter "

"Når du lærer EJB at kende i praksis, vil du forstå forskellen. Groft sagt er en POJO en kniv, og en EJB er en schweizisk hærkniv, som du også kan bruge til at foretage telefonopkald."

"Interessant sammenligning."

"Ja, og her er en ting mere."

"Over tid begyndte objekter og klasser at blive specialiserede. Som et resultat identificerede udviklere bestemte roller og gav nye navne til de tilsvarende objekter."

"Et dataoverførselsobjekt ( DTO ) er et objekt skabt til at transportere data. Disse objekter har normalt to krav. De skal: a) kunne lagre data, b) kunne serialiseres. Med andre ord bruges de kun til at overføre data ."

"Du opretter et objekt, skriver de nødvendige data fra forretningslogikken ind i det, serialiserer det til JSON eller XML og sender det, hvor det skal hen. Eller omvendt: en besked ankommer, du deserialiserer den til et DTO-objekt. , og udtrække data fra det."

"En Entity er et objekt, der er gemt i en database. Men de indeholder ingen forretningslogik. Man kan sige, at dette er forretningsmodellens data."

"Vi har også dataadgangsobjektet ( DAO ). En DAO bruges til at gemme objekter til og hente dem fra en database. Enheden gør ikke dette, da den ikke har nogen logik, så den kan ikke gemme hvad som helst hvor som helst."

Eksempel:

Forholdet mellem en DAO og en enhed
UserEntity user = UserDAO.getUserById("1535");
if (user.getAge() > 18)
{
 user.setMobilization(true);
 UserDAO.save(user);
}
Kommentarer
UserEntity is a class that stores user data
UserDAO is a class that retrieves data (UserEntity objects) from the database and stores it there again after modifying it.

"Det er alt for nu."

"Selvom dette er en lille indledende lektion, vil du stadig ikke være i stand til at forstå mere lige nu. Vi kunne bruge dage på at tale om hvert af disse emner, og vi kunne bruge år på at dække EJB."

"Men jeg ønsker, at du i det mindste skal kunne forestille dig, hvad der bliver sagt, hvis du støder på disse ting i samtaler og beskeder, på fora eller i et interview."

"Hmm. Tak, Bilaabo. Ja, jeg tror, ​​jeg ikke kender nok fagudtryk. Igen, mange tak."