ppls
ppls
ppls
58
0.0 (0)
D. R.
D. R.
Diese Lernkarten bieten eine grundlegende Einführung in die Architektur und Entwicklung von Java-basierten Anwendungen. Sie behandeln zentrale Konzepte wie Transaktionen, Session Beans, Enterprise Java Beans (EJB), und verschiedene Architekturansätze. Die Karteikarten sind ideal für Entwickler, die sich mit der Implementierung und dem Design von skalierbaren, transaktionssicheren und wiederverwendbaren Applikationen beschäftigen.
Cartes-fiches
58
Utilisateurs
2
Langue
Allemand
Catégorie
Chimie
Niveau
École primaire
Créé / Mis à jour
31.03.2018 / 31.03.2018
-
- 1 / 58
-
Cartes-fiches
Was heißt Bounded Context?
- kein universelles Datenmodell zwischen Microservices
- vertikale Aufteilung von Funktionen und Daten
Wie ist die Architektur von JEE?
- Web Browser kommuniziert mit Web Container (HTTP)
- Web Container besteht aus Servlet und Java Server Faces
- Web Containter kommuniziert mit EJB Container
- Java Application kommuniziert mit EJB Containter (RMI)
Was weißt du zu Enterprise Java Bean? Und welche Arten davon gibt es?
- serverseitiges Komponentenmodell zur Realisierung der Geschäftslogik
- realisieren
- skalierbare
- transaktionale
- sichere
- und wiederverwendbare Applikationen
- Entity (Bean) - persistentes, fachliches Object
- Session Bean
- Stateless Session Bean
- Stateful Session Bean
- Singleton Session Bean
- Message-driven Bean (asynchrone Kommunikation)
Wie ist das Packaging bei JEE?
- Enterprise Archive (ear) - enthält .war .jar .rar
- EJB-JAR (Enterprise Java Bean Archive, jar) - enthält EJBs
- Web Application Archive (war) - Web-basierten Komponenten
Erzähl was über Session Beans. Wie lauten die Annotationen?
- Session Bean implementiert Use Cases
- musste bis Version 2.x eine Reihe von Interfaces implementieren
- ab 3.0 durch POJO realisiert, Annotations werden verwendet
Entfernter Zugriff erfolgt mehr RMI (Remote Method Invocation).
Annotationen (Folie 28ff)
- @Stateless für Stateless Bean
- @Remote für das Interface welches Remote verwendet werden soll (die EJB implementiert dann das Interface)
- @Local für das Interface welches Lokal verwendet werden soll
- @EJB an eine Variable injiziert dann die lokale EJB in die Variable
Erzähle was über Stateless Session Beans.
Wie lauten die Zustände?
- beliebige Zuweisung aus Pool
- Instanzvariablen können, sollten aber besser nicht belegt werden
- Geschäftslogik sollte in einem Methodenaufruf erledigt werden
- Vorteile Pooling:
- kleine Anzahl Beans kann theoretisch größere Anzahl von Clients bedienen
- benötigen weniger Server Ressourcen
- Hohe Skalierbarkeit
- Auslastung des Application Server sinkt
Erzähle was über Singleton Seassion Bean
Sowie über die Zustände
- es existiert nur eine Session
- Einsparung von Ressourcen
- nicht thread-safe
- Methoden zur Unterbindung nicht performant
- gut für gleichzeitige Lesezugriffe mit wenigen Updates
Lösung (Folie 30)
- synchronized -> inperformant
- Alternativ `@ConcurrencyManagement?
- Vorteil: Read-Lock und Write-Lock
- Read-Lock beliebig viele, aber nicht wenn Write-Lock vorhanden
- Write-Lock nur genau einmal
Was bedeuted ACID?
- Atomicity; nicht zerlegbar; entweder ganz oder gar nicht
- Consistency; eine Transaktion hinterlässt einen konsistenten Datenbankzustand
- Isolation; nebenläufige Transaktionen beeinflussen sich nicht
- Durability; Wirkung einer erfolgreichen Transaktion bleibt dauert in der DB erhalten
Was weißt du über Transaktionen?
Nenne auch die Transaktionsattribute
- Problem: Aus einer Transaktion können weitere Methoden anderer Session Beans aufgerufen werden; Gültigkeitsbereich einer Transaktion?
- Abhängig von Transaktionsattributen
- REQUIRED (Default) - neue Transaktion in gleicher Transaktion
- REQUIRES_NEW - neue Transaktion in eigener Transaktion
- MANDATORY - neue Transaktion in eigener Transaktion; wenn keine Transaktion existiert -> FEHLER