Oracle Business Components for Java

Werbung
Oracle Business
Components for Java
Arnim von Helmolt / OPITZ CONSULTING
Oracle Business Components for Java, Seite 1
Agenda
• Was ist BC4J?
• Architektur einer BC4J Applikation
• Verteilung einer BC4J Applikation
• Clients für BC4J Applikationen
• Fazit, Fragen und Antworten
Oracle Business Components for Java, Seite 2
Was ist BC4J?
Oracle Business Components for Java (BC4J) ist ein technisches
Framework basierend auf Java und XML.
Es erlaubt
•
produktive Entwicklung von mehrschichtigen, Datenbankgetriebenen Java Applikationen auf Basis von Komponenten,
•
flexible Verteilungsmöglichkeiten für die Komponenten der
mittleren Schicht,
•
leichte Anbindung von schmalen Java Swing-, Servlet- und
JavaServer Page Clients.
Oracle Business Components for Java, Seite 3
Technische Frameworks
Technische Frameworks unterstützen die Anwendungsentwicklung.
Sie umfassen:
•
Softwarebausteine mit Basisfunktionalitäten wie Connection
Pooling, Caching, Locking, Master-Detail-Synchronisation
BC4J: Java Klassenbibliotheken
•
Tool-Unterstützung bei der Softwareentwicklung
BC4J: JDeveloper Wizards, ab JDeveloper 3.2 Integration ins
Designer Repository, OPITZ CONSULTING Erweiterungen
•
Ein Vorgehensmodell für den Einsatz
BC4J: OPITZ CONSULTING
Oracle Business Components for Java, Seite 4
Abgrenzung
Fachliche Frameworks:
•
Vordefinierte Geschäftskomponenten für bestimmte
Einsatzbereiche
•
Zum Beispiel: Adreßverwaltung, Lagerverwaltung, Buchhaltung...
BC4J ist kein fachliches Framework, entsprechende Komponenten
können aber mit BC4J entwickelt werden.
Oracle Business Components for Java, Seite 5
Architektur einer BC4J Anwendung
Quelle: Oracle
Oracle Business Components for Java, Seite 6
Entity Objects
Entitiy Objects (EOs):
•
EOs entsprechen 1:1 Tabellen der Datenbank. Spalten der
Tabellen werden dabei zu Attributen der EOs.
•
Über EOs wird u.a. Persistenz und Caching realisiert. Ferner kann
hier zentral Geschäftslogik implementiert werden.
•
Ein EO besteht aus einer XML-Datei (Metadaten) und einer Java
Datei (Implementierung von Geschäftslogik).
•
Beziehungen zwischen EOs werden durch Assoziationen
abgebildet. Assoziationen beruhen z.B. auf Foreign Keys der
zugehörigen Tabellen.
Oracle Business Components for Java, Seite 7
View Objects
View Objects (VOs):
•
VOs steuern den Zugriff auf die Daten der Applikation. Dazu
kapseln sie SQL SELECT Anweisungen.
•
VOs beruhen auf EOs, beim Ausführen der Abfrage eines VO
werden über den Cache die zugehörigen Entitys erzeugt.
(Ausnahme: Read Only VOs)
•
Clients greifen nur über VOs auf EOs zu. VOs bieten dazu alle
benötigten Funktionen zum Navigieren in Ergebismengen.
•
Auch Änderungen geschehen über die Attribute von VOs. Dies
wird dann an die zugrundeliegende EOs mit ihrer Geschäftslogik
delegiert.
•
Master-Detail-Beziehungen werden über View Links koordiniert.
Oracle Business Components for Java, Seite 8
View Objects
Quelle: Oracle
Oracle Business Components for Java, Seite 9
Application Tier Caching
Quelle: Oracle
Oracle Business Components for Java, Seite 10
Application Modules
Application Modules:
• Zusammenfassung von VOs
und View Links für die
Unterstützung eines
Anwendungsfalles
• Können weitere Dienste in Form
von Custom Methods anbieten.
• Schnittstelle von BC4J
Applikationen zum Client
• Bilden Komponenten, die auf
unterschiedliche Plattformen
verteilt werden können
• Definieren Transaktionskontext
Oracle Business Components for Java, Seite 11
Zusammengesetzte Application Modules
Quelle: Oracle
Oracle Business Components for Java, Seite 12
Anwendungsverteilung
Das BC4J Framework unterstützt eine flexible Verteilung auf
unterschiedliche Plattformen ohne Änderungen der
Anwendungskomponenten:
•
Deployment als Java CORBA Komponenten
•
Deployment als Enterprise JavaBeans
•
„Lokales“ Deployment
Oracle JDeveloper 3.2 unterstützt das Deployment nach
•
Oracle9i Application Server
•
Visibroker
•
BEA WebLogic
Oracle Business Components for Java, Seite 13
Verteilungsvarianten
Client
Präsentationsschicht
Applikationsschicht
Browser
Web-Server
App-Server
HTML
Dynamisch
generiertes
HTML
Geschäftslogik
HTTP
Datenbank
Servlets
JSP
JavaBeans
IIOP
BC4J
(EJB oder
CORBA)
JDBC
Browser
mit JVM
Downloaded
Java Applets
JavaBeans
IIOP
Oracle Business Components for Java, Seite 14
Daten
Verteilungsvarianten II
Client
Präsentationsschicht
Browser
Web-Server
Datenbank
Dynamisch
generiertes
HTML
HTML
HTTP
Servlets
JSP
JDBC
JavaBeans
BC4J
Oracle Business Components for Java, Seite 15
Daten
Oracle9i Application Server
Client
Oracle HTTP Server
powered by Apache
Oracle JVM
Browser
Web-Server
App-Server
HTML
Dynamisch
generiertes
HTML
Geschäftslogik
HTTP
Oracle Server
Servlets
JSP
JavaBeans
IIOP
BC4J
(EJB oder
CORBA)
JDBC
Browser
mit JVM
Downloaded
Java Applets
JavaBeans
IIOP
Oracle Business Components for Java, Seite 16
Daten
BC4J Clients
Aufbauend auf BC4J Application
Modules und VOs können leicht
Java Clients entwickelt werden:
•
Thin Java UI Clients (Swing
Clients)
•
Java Servlets und
JavaServer Pages, siehe Abb.
Oracle Business Components for Java, Seite 17
Fazit
•
BC4J unterstützt effizient die Entwicklung von Datenbankbasierten Applikationen. Die Anwendungsentwicklung kann sich
auf die fachlichen Anforderungen konzentrieren.
•
BC4J Applikationen zeichnen sich durch saubere
Schichtentrennung aus und lassen sich leicht auf unterschiedliche
Plattformen verteilen.
•
Für BC4J Applikationsmodule lassen sich leicht unterschiedliche
Java Clients (HTML, Swing) entwicklen.
Oracle Business Components for Java, Seite 18
Quellen zu BC4J
•
Online-Dokumentation zum Oracle JDeveloper und
zum Oracle9i Application Server
•
Oracle Technology Network
(http://otn.oracle.com/products/jdev/)
•
JDeveloper Diskussionsforum im OTN
(http://technet.oracle.com/support/bboard/discussions.html)
Oracle Business Components for Java, Seite 19
Haben Sie noch Fragen?
Oracle Business Components for Java, Seite 20
Herunterladen