*   >> Læs Uddannelse artikler >> science >> programming

Grundlæggende Spring Transaktioner

Transaktion support er tilgængelig i J2EE som en del af EJB komponent arkitektur. For et simpelt program, der ikke vil blive distribueret blandt mange servere transaktionen støtte, der er til rådighed i foråret er mere end effektiv.

Foråret giver et par muligheder, når det kommer til transaktion ledelse. Den mest almindeligt anvendte løsning er Deklarativ Transaktioner fordi det har den mindste indflydelse på ansøgning kode. Dog brugte jeg den programmæssige Transaktion indstillingen var dette den nemmeste at implementere i arkitekturen, som jeg arbejdede med.

Mange, der forsøger at integrere foråret med legacy kode kan finde dette det mest realistisk mulighed så godt. Her er de trin, som jeg brugte.

Først vil jeg ændret JBoss-spring.xml fil til at omfatte en bønne reference til JTA Transaktion Manager.

JBoss-spring.xml


Så i klasserne, som jeg ønskede at bruge transaktioner Jeg har tilføjet en henvisning til bønner som en egenskab i JBoss-spring.xml

fil.


Jeg derefter brug for at tilføje nogle import til den faktiske Java-klasse, der ville indeholde transaktionsbeslutning referencer.

De ekstra funktioner, som jeg havde brug for at tilføje relateret til Spring transaktioner er fremhævet med fed

BookMgmtHandler.java

import org.springframework.transaction.PlatformTransactionManager.; import org.springframework.transaction.TransactionDefinition; import org.springframework.transaction.TransactionStatus; import org.springframework.transaction.support.

DefaultTransactionDefinition;

public class BookMgmtHandler {= null BookDAO BookDAO; BookDataAggregator BookDataAggregator = null; privat PlatformTransactionManager transactionManager = null;

privat TransactionDefinition getDefinition () {DefaultTransactionDefinition def = ny DefaultTransactionDefinition (TransactionDefinition.PROPAGATION_REQUIRED); returnere def;}

offentlige Bog saveBook (Bog bog) kaster {Book retBook = null BOOKException; TransactionStatus status = transactionManager.

getTransaction (getDefinition ()); //Sætte en blok til at fange undtagelser rollback transaktionen prøve {BookDAO.updateBook (bog); retBook = BookDataAggregator.getBook (book.getBookID ()),} fangst (BOOKException være) {transactionManager.rollback (status), kast være;} transactionManager.commit (status); tilbage retBook;}

public void setTransactionManager (PlatformTransactionManager platformTransactionMan

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Læs Uddannelse artikler,https://uddannelse.nmjjxx.com All rights reserved.