JPAWriterPattern

Das Muster "JPAWriterPattern" wird verwendet, um über eine JPA-Verbindung (Java™ Persistence API) Daten in eine Datenbank zu schreiben.

Unterstützungsklassen

Die Klasse "JPAWriter" implementiert die JPA-Basisoperationen für das Abrufen einer EntityManager-Klasse sowie die Teilnahme (Join) an, das Starten und das Festschreiben von Transaktionen. Standardmäßig nimmt der JPAWriter an einer vorhandenen globalen Transaktion teil.

Packen Sie eine Datei persistence.xml, die das Attribut "transaction-type" auf JTA setzt und ein Element "jta-data-source" deklariert. Konfigurieren Sie optional die Klasse "JPAWriter" so, dass Transaktionen synchronisiert mit den globalen Transaktionen gestartet und festgeschrieben werden. Diese Transaktionen werden mit dem Element "non-jta-data-source" und Verbindungs-URLs verwendet. In diesem Fall setzt die Datei persistence.xml das Element "transaction-type" auf RESOURCE_LOCAL und deklariert ein Element "non-jta-data-source" oder Verbindungs-URLs.

Erforderliche Eigenschaften

Die folgenden Eigenschaften sind für das Muster erforderlich.

Tabelle 1. Erforderliche Eigenschaften. Die Tabelle enthält die Namen und Werte der erforderlichen Eigenschaften für das Muster.
Eigenschaftsname Wert
PATTERN_IMPL_CLASS Klasse, die die Schnittstelle JPAWriterPattern implementiert
PERSISTENT_UNIT Der Name der persistenten Providereinheit.
JPA-Eigenschaften, die Sie in der Klasse "EntityManager" definieren Werte dieser Eigenschaften

Optionale Eigenschaften

Die folgenden Eigenschaften sind für das Muster optional.

Tabelle 2. Optionale Eigenschaften. Die Tabelle enthält die Namen, die Werte und die Beschreibungen der optionalen Eigenschaften für das Muster.
Eigenschaftsname Wert Beschreibung
debug true oder false (die Standardeinstellung ist "false") Aktiviert detailliertes Tracing in diesem Stapeldatenstrom.
use_JTA_transactions true oder false (die Standardeinstellung ist "true") Wenn Sie das Element "non-jta-data-source" oder Verbindungs-URLs verwenden, setzen Sie diese Eigenschaft auf false.
EnablePerformanceMeasurement true oder false (die Standardeinstellung ist "false") Berechnet die Gesamtzeit in den Stapeldatenströmen und in der Methode "processRecord" bei Verwendung des GenericXDBatchStep.

Schnittstellendefinition

public interface JPAWriterPattern {

	/**
	 	 * Diese Methode wird während der Erstellung des Jobs aufgerufen, um die Initialisierung des JPAWriter-Datenstroms zu ermöglichen.
	 	 * @param props - Eigenschaften, die über xJCL übergeben werden
	 */
public void initialize(Properties props);
	
	/**
	 	 * Diese Methode wird aufgerufen, um das übergebene Objekt mit JPA EntityManager
  * persistent in der Datenbank zu speichern
	 	 * @param manager
	 	 * @param record  
	 */
		public void writeRecord(EntityManager manager, Object record);
}  

xJCL-Beispiel

<batch-data-streams>
<bds>
<logical-name>outputStream</logical-name>  
<props>
<prop name="PATTERN_IMPL_CLASS" value="com.ibm.websphere.batch.samples.tests.bds.EchoWriter"/>  
<prop name="PERSISTENT_UNIT" value="mypersistentU"/>  
<prop name="debug" value="true"/>  
</props>
<impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.JPAWriter</impl-class>  
</bds>
</batch-data-streams>

Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rgrid_btchpttrn10
Dateiname:rgrid_btchpttrn10.html