1. Angelegenheiten
Die Essenz von Frühlingstransaktionen ist tatsächlich die Unterstützung der Datenbank für Transaktionen. Ohne Datenbank -Transaktionsunterstützung kann Spring keine Transaktionsfunktionen bereitstellen. Am Ende wird alles als Datenbankverbindung bezeichnet, um die Transaktionsöffnung, das Verhalten und die Zurückrollen zu vervollständigen.
2. Modul
Für Federtransaktionen sind mehrere unverzichtbare Module Datenquellen, Transaktionsmanager und Transaktionsprogramme.
3.. XML -Konfiguration
<!-Transaktionsmanager-> <bean id = "SpringTransactionManager"> <Eigenschaft name = "dataSource" ref = "dataSource" /> < /bean> <!-Data Source-> <bean id = "dataSource"> <Eigenschaft name = "triverClassname" value = "com.mysql.jdbc.dddbc.ddriver" /> < value = "JDBC: MySQL: //127.0.0.1: 3306 /test? CharakterCoding = Utf8" /> <Eigenschaftsname = "Benutzername" value = "root" /> <Eigenschaft name = "password" value = "123456" /> < /bean> <bean id = " <!- Geben Sie die SQLMAPConfig-Gesamtkonfigurationsdatei an. Die benutzerdefinierte Umgebung ist im Spring Container-> <!-nicht wirksam die Entitätsklassenzuordnungsdatei. Sie können das angegebene Paket und alle Konfigurationsdateien gleichzeitig unter dem Unterpackung angeben. Es gibt einen Mapper und eine Konfiguration. When you need to specify an alias for the entity class, you can specify the configLocation property, and then use mapper to introduce the entity class mapping file in the mybatis total configuration file--> <!-- <property name="configLocation" value="classpath:fwportal/beans/dbconfig/mybatis.xml" />--> <property name="mapperLocations" value = "classPath: mapper/*. xml"/> </bean> <!-Registrieren Sie die DAO-Schnittstelle als Bean-> <bean> <Eigenschaft name = "Basepackage" value = "transaction.dao"/> </bean>
4. Transaktionsprogrammierung
@Test public void testDelete () löst eine Ausnahme aus {applicationContext context = new classPathXmlApplicationContext ("mysqltransaction.xml"); DataSourcetransactionManager SpringTransactionManager = (DataSaSourcetransactionManager) context.getBean ("SpringtransactionManager"); DefaultTransactionDefinition (); def.setPropagationBehavior (TransactionDefinition.Propagation_Required); // Die Transaktionstransaktionstatus = SpringTransactionManager.getTransaction (Def); endgültige Studentsdao DAO = (StudentDao) context.getBean ("studentDa) (" studentDa); Ex) {SpringTransactionManager.Rollback (Status); // Transaktionsrollback -Wurf ex;} SpringTransactionManager.Commit (Status); // Transaktionsausschüsse}5. Zusammenfassung
Das obige Kennzeichen für die Verwendung von MyBatis und Spring, um Transaktionsvorgänge abzuschließen. Die Datenbank -Transaktions -Isolierungsstufe kann konfiguriert werden, und die Datenbank -Isolierungsstufe von MySQL befindet sich in der Verbindungsdimension.
Sie können auch die Zeitüberschreitungszeit der Transaktion festlegen, dh die Timeout -Transaktion rollt automatisch zurück.
Das obige ist der gesamte Inhalt dieses Artikels über die Analyse von MyBatis -Öffnen des Spring Transaction Code. Ich hoffe, dass dies für alle hilfreich sein wird. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!