AR Sollution Softwareentwicklung Dresden / Chemnitz Bild 3

Leistungsspektrum

Übersicht über das Leistungsangebot zu Programmierung &  Softwareentwicklung. (siehe auch Zertifizierungen)

Enterprise Java Beans (EJB)

Enterprise Java Beans werden überwiegend in komplexen Unternehmensanwendungen für die Realisierung der Geschäftslogik eingesetzt. Der Einsatz erfolgt vor allem immer dann, wenn transaktionales Verhalten und Sicherheitsmechanismen benötigt werden. Um dies zu ermöglichen, erhalten EJBs Zugriff auf die in einem Applikationsserver (z.B. JBoss, Glassfish, Wildfly etc.) integrierten J2EE-Technologien wie JTA, JMS etc. in Form von Diensten.

Enterprise Java Beans werden in Session Beans und Message Driven Beans unterteilt. Früher zählten hierzu noch die Entity Beans. Seit Java EE 6 gelten diese jedoch als veraltet und wurden durch die Java Persistence API (JPA) ersetzt. (–> Wikipedia)

Session Beans

Session Beans repräsentieren die Geschäftslogik in einer verteilten Anwendung. Diese sind für die Verarbeitung von Anfragen eines einzelnen Clients zuständig. Session Beans werden über einen Remote Procedure Call (RPC) angesprochen, wodurch der Client während der Bearbeitung in den Wartezustand versetzt wird. Session Beans werden in zustandslose und zustandsbehaftete Session Beans unterteilt. Eine zustandslose Session Bean kann mit mehreren Clients kommunizieren. Diese ist nicht in der Lage, bereits durchgeführte Verarbeitungsschritte zu speichern. Zustandsbehaftete Session Beans hingegen kommunizieren ausschließlich mit einem Client und ermöglichen zudem die Speicherung eines Zustandes (z.B. ein Warenkorb bei einer Online-Bestellung). Diese werden erst nach Beendigung der Kommunikation mit einem Client gelöscht. In der Praxis arbeiten daher zustandslose Session Beans performanter als zustandsbehaftete. (–> Oracle)

Message Driven Beans

Message Driven Beans repräsentieren wie Session Beans die Geschäftslogik in einer verteilten Anwendung. Allerdings erfolgt bei dieser EJB eine asynchrone Verarbeitung der Client-Anfragen, was bedeutet, dass die Bearbeitung nicht unmittelbar erfolgen muss (z.B. der Versand einer E-Mail). Somit wird die Performance für die Bearbeitung der Anfrage verbessert, da der Client weiterarbeiten kann. Üblicherweise wird hierbei JMS verwendet, d.h. die Kommunikation zwischen zwei Systemen erfolgt Nachrichtenorientiert. (–> Oracle)

Java Persistence API (JPA)

JPA ist ein Framework das die Abbildung von Objektgeflechten auf relationale Strukturen einer Datenbank ermöglicht. Bei den Objekten handelt es sich um Instanzen von Entitätsklassen, die in einer relationalen Datenbank gespeichert und wieder ausgelesen werden können. Dieser Vorgang wird als objektrelationale Abbildung (O/R-Mapping) bezeichnet. Für die Anwendung von JPA ist ein JPA-Provider erforderlich. Zu den bekanntesten zählen Hibernate, OpenJPA und EclipseLink die zudem herstellerspezifische Erweiterungen anbieten. Eine weitere bekannte Implementierung ist DataNucleus, das von Google verwendet wird um mit JPA auf den Datenspeicher der Google-App Engine zuzugreifen. In J2EE-Anwendungen wird JPA überwiegend innerhalb der EJBs verwendet. (–> Wikipedia)

Java Transaction API (JTA)

Die Java Transaction API ist für die Verwaltung von Transaktionen zwischen einem Applikationsserver und einem Datenbank Management System unter Verwendung eines Transaktionsmonitors zuständig. Eine Transaktion fasst hierbei mehrere Datenbankoperationen zu einer logischen Operation zusammen, die entweder vollständig oder gar nicht ausgeführt wird. Nur so kann die Konsistenz eines Datenbank Management Systems gewährleistet werden. Wenn alle Datenbankoperationen erfolgreich ausgeführt werden können, wird die Transaktion erfolgreich beendet (engl. commit) und endgültig festgeschrieben. Andernfalls werden alle bereits durchgeführten Datenbankänderungen innerhalb der Transaktion wieder rückgängig gemacht (engl. rollback). (–> Oracle)

Java Message Service (JMS)

In einer verteilten Anwendung besteht die Möglichkeit, dass zwei oder mehrere Systeme nachrichtenorientiert miteinander kommunizieren können. Ein großer Vorteil hierbei ist die asynchrone und somit zu einem späteren Zeitpunkt mögliche Verarbeitung einer Anfrage. Dies geschieht über das Versenden von Nachrichten. Der Java Message Service ist eine Standard der vorgibt, wie diese Nachrichten von einem System (Sender) zu einem anderen System (Empfänger) gesendet werden können. Die Kommunikation erfolgt hierbei stets über eine dritte Komponente, dem sogenannten JMS-Provider. Zu den bekanntesten zählen IBM MQSeries, HornetQ von JBoss und Bea Weblogic JMS, die zudem herstellerspezifische Erweiterungen anbieten. (–> Wikipedia)

JMS unterscheidet zwischen einem Point-to-Point- (P2P) und einem Publish-Subscribe-Modell. Bei dem P2P-Modell erfolgt die Kommunikation zwischen genau einem Sender und einem Empfänger. Das Publish-Subscribe-Modell erlaubt hingegen das Versenden von Nachrichten an mehrere Empfänger. In beiden Modellen ist der JMS-Provider für den Empfang und die Weiterleitung der Nachrichten zuständig.

Structured Query Language (SQL)

Structured Query Language ist eine Sprache mit der die in einer relationalen Datenbank wie z.B. Oracle gehaltenen Datensätzen abgefragt, eingetragen, manipuliert und wieder gelöscht werden können. Ebenso können Tabellen und Views in der die Datensätze gehalten werden angelegt und bearbeitet werden. SQL zählt zu den Sprachen der 4. Generation, da die Befehle näher an der menschlichen Sprache sind als die anderer Programmiersprachen. (–> Wikipedia)

Single Euro Payments Area (SEPA)

SEPA steht für Single Euro Payments Area und bezeichnet einen „Raum“ indem alle Zahlungen (Euro-Transaktionen) einheitlich verarbeitet werden. Dazu wurde ein einheitliches Bankformat festgelegt. Das Sepa-Regelwerk wurde vom EPC (European Payment Council) erarbeitet, welches von den Europäischen Kreditinstituten gegründet wurde. Die in diesem Regelwerk definierten Bedingungen, Rechte und Pflichten sowie die streng geregelten Prozesse und Fristen bei der Transaktionsabwicklung gelten für alle teilnehmenden Länder. (–> Wikipedia)

Vorschaubild: ©stokkete / fotolia.com