1. Affaires
L'essence des transactions Spring est en fait la prise en charge de la base de données pour les transactions. Sans support de transaction de base de données, Spring ne peut pas fournir de fonctions de transaction. En fin de compte, tout est appelé la connexion de la base de données pour terminer l'ouverture, la validation et le retour des transactions.
2. Module
Ainsi, pour les transactions Spring, plusieurs modules indispensables sont des sources de données, des gestionnaires de transactions et une programmation de transactions.
3. Configuration XML
<! - Transaction Manager -> <bean id = "springTransactionManager"> <propriété name = "dataSource" ref = "dataSource" /> </ bean> <! - Source de données -> <bean id = "dataSource"> <propriété name = "driverclassname" value = "com.mysql.jdbc.driver" /> <propriété nom = "url" Value = "JDBC: mysql: //127.0.0.1: 3306 / test? CaractoDcoding = utf8" /> <propriété name = "username" value = "root" /> <propriété name = "passway" value = "123456" /> </ bean> <bean id = "sqLSessionFactory"> <propriété nom = "dataSource" ref = "dataSource" /> <! Spécifiez le fichier de configuration total SQLMAPConfig. L'environnement personnalisé n'est pas efficace dans le conteneur à ressort -> <! - Spécifiez le fichier de mappage de classe d'entité. Vous pouvez spécifier le package spécifié et tous les fichiers de configuration sous le sous-package en même temps. Il y a un mappeur et une configlocation. Lorsque vous devez spécifier un alias pour la classe d'entité, vous pouvez spécifier la propriété Configlocation, puis utiliser Mapper pour introduire le fichier de mappage de classe d'entité dans le fichier de configuration total MyBatis -> <! - <propriété name = "configLocation" value = "classpath: fwportal / beeb Value = "CLASSPATH: MAPPER / *. XML" /> </ Bean> <! - Interface DAO en tant que bean -> <an Bean> <propriété Name = "Basepackage" Value = "Transaction.dao" /> </ Bean>
4. Programmation des transactions
@Test public void TestDelete () lève une exception {applicationContext context = new ClassPathXmlApplicationContex DefaultTransactionDefinition (); Def.SetPropagationBehavior (TransactionDefinition.Propagation_Required); // Ouvrez la transaction TransactionStatus = SpringTransactionManager.GetTransaction (Def); Final StudentDao Dao = (StudentDao) context.getBean ("StudentDao"); Essy); gens5. Résumé
Ce qui précède consiste à utiliser MyBatis et Spring pour effectuer les opérations de transaction. Le niveau d'isolement des transactions de base de données peut être configuré et le niveau d'isolement de la base de données de MySQL est dans la dimension de connexion.
Vous pouvez également définir l'heure du délai d'expiration de la transaction, c'est-à-dire que la transaction de délai d'expiration recule automatiquement.
Ce qui précède est tout le contenu de cet article sur MyBatis ouvrant l'analyse du code de transaction Spring, j'espère que cela sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à d'autres sujets connexes sur ce site. S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!