Maison  >  Article  >  Java  >  Résumé de la compréhension personnelle des transactions Java

Résumé de la compréhension personnelle des transactions Java

巴扎黑
巴扎黑original
2017-05-22 23:50:351247parcourir

Les transactions dans les opérations de base de données sont habituellement appelées transactions Java

1. Qu'est-ce qu'une transaction Java

Le concept habituel est que les transactions sont uniquement liées aux bases de données.
Les transactions doivent être conformes aux principes ACID établis par l'ISO/IEC. ACID est l'abréviation d'atomicité, de cohérence, d'isolation et de durabilité. L'atomicité d'une transaction signifie que tout échec lors de l'exécution de la transaction entraînera l'invalidité de toutes les modifications apportées par la transaction. La cohérence signifie que lorsqu'une transaction échoue, toutes les données affectées par la transaction doivent être restaurées dans leur état avant l'exécution de la transaction. L'isolement signifie que les modifications apportées aux données pendant l'exécution de la transaction ne sont pas visibles par les autres transactions avant que la transaction ne soit validée. La persistance signifie que le statut des données soumises doit être correct lorsque l'exécution de la transaction échoue.
                                                                                                                                                                                                                                                                 " instructions. La réponse la plus simple est : soit toutes les exécutions réussissent, soit elles sont annulées et non exécutées.
Puisque la notion de transaction vient de la base de données, qu'est-ce qu'une transaction Java ? Quel est le lien ?
En fait, si un système d'application Java souhaite faire fonctionner une base de données, il est implémenté via JDBC. L'ajout, la modification et la suppression sont tous implémentés indirectement via les méthodes correspondantes, et le contrôle des transactions est également transféré en conséquence au code du programme Java. Par conséquent, les transactions d'exploitation de base de données sont traditionnellement appelées transactions Java.


2. Pourquoi les transactions sont nécessaires

Les transactions sont proposées pour résoudre les opérations de sécurité des données. Le contrôle des transactions consiste en fait à contrôler l'accès sécurisé aux données. Voici un exemple simple : par exemple, dans le cadre d'une activité de virement bancaire, le compte A souhaite transférer 1 000 yuans de son propre compte vers le compte B. Le solde du compte A doit d'abord être soustrait de 1 000 yuans, puis le solde du compte B doit être augmenté de 1 000 yuans. S'il y a un problème dans le réseau intermédiaire, que le prélèvement de 1 000 yuans sur le compte de A est terminé et que le fonctionnement de B échoue en raison d'une interruption du réseau, alors l'ensemble de l'entreprise échoue et un contrôle doit être effectué pour exiger l'annulation du transfert. affaires du compte de A. Cela peut garantir l'exactitude de l'entreprise. Pour mener à bien cette opération, une transaction est nécessaire. La diminution des fonds du compte A et l'augmentation des fonds du compte B sont combinées en une seule transaction. Soit toutes les exécutions sont réussies, soit toutes les opérations sont annulées. préservant ainsi la sécurité des données.

3. Types de transactions Java


Il existe trois types de transactions Java : les transactions JDBC, les transactions JTA (Java Transaction API) et les transactions de conteneur.
1. Transaction JDBC
La transaction JDBC est contrôlée par l'objet Connection. L'interface de connexion JDBC (java.sql.Connection) propose deux modes de transaction : la soumission automatique et la soumission manuelle. java.sql.Connection fournit les méthodes suivantes pour contrôler les transactions :
public void setAutoCommit(boolean)
public boolean getAutoCommit()
public void commit()
public void rollback()
Utiliser Lorsque vous délimitez une transaction JDBC, vous pouvez combiner plusieurs instructions SQL en une seule transaction. L'un des inconvénients des transactions JDBC est que la portée de la transaction est limitée à une seule connexion à la base de données. Une transaction JDBC ne peut pas s'étendre sur plusieurs bases de données.

[Recommandations associées]

1. Explication détaillée de la gestion des transactions Java et exemple de code JDBC

2 Apprentissage de la gestion des transactions Java. Introduction détaillée à Hibernate

3. Apprentissage de la gestion des transactions Java : explication détaillée du code de Spring et Hibernate

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn