Spring4 (trois) Spring AOP et commentaires et gestion des transactions en utilisant des modèles JDBC

développement à base d'annotation AOP de printemps de la ApsectJ

Créer un projet, l'introduction du paquet jar

Insérer ici l'image Description

Et la préparation de la configuration de la classe cible

Insérer ici l'image Description

L'écriture section de classe et configure

Insérer ici l'image DescriptionInsérer ici l'image Description

Les objets en utilisant la classe Annotation cible améliorée AOP

Ouvrez annotations dans le fichier de configuration développement AOP
Insérer ici l'image Description
utilisant des annotations sur la classe d'aspect
Insérer ici l'image Description

cours de test d'écriture

Insérer ici l'image Description

Les annotations Spring AOP du type de notification

@Before: Avant conseils

Insérer ici l'image Description

@AfterReturning: avis arrière

Insérer ici l'image Description

@Around: Autour des conseils

Insérer ici l'image Description

@AfterThrowing: exception avis jeté

Insérer ici l'image Description

@After: avis final

Insérer ici l'image Description

Notes Point d'entrée de la configuration Spring AOP

Insérer ici l'image Description

Utilisation des modèles JDBC de Spring

Les modèles JDBC de printemps

Le printemps est un cadre de développement d'EE un guichet unique, EE a développé des solutions pour chaque couche. La couche de persistance de Spring fournit également une solution: ORM et modèle du module JDBC.
Spring fournit de nombreux modèles pour simplifier le développement de:
Insérer ici l'image Description

Mise en modèle JDBC utilisé

创建项目,引入jar包
	引入基本开发包:
	数据库驱动
	Spring的JDBC模板的jar包

Insérer ici l'image Description

Créer des bases de données et tables

create database spring4_day03;
use spring4_day03;
create table account(
	id int primary key auto_increment,
	name varchar(20),
	money double
);

En utilisant le modèle JDBC: la sauvegarde des données

Insérer ici l'image Description

La gestion du pool de connexion et des modèles pour Spring

L'introduction du fichier de configuration Spring

Insérer ici l'image Description

Utilisez le modèle Jdbc

paquet Jar introduit spring_aop
Insérer ici l'image Description

L'utilisation de pool de connexion de base de données open source:

Présentation de package jar
Insérer ici l'image Description
configuration pool de connexion DBCP
Insérer ici l'image Description

utilisation C3P0

Présentation de package jar pool de connexion C3P0
Insérer ici l'image Description
pool de connexion de configuration c3p0
Insérer ici l'image Description

Fichier pour extraire les propriétés de configuration

Définir un fichier de propriétés
Insérer ici l'image Description
premier:
Insérer ici l'image Description
deuxième:
Insérer ici l'image Description
l'introduction de la valeur du fichier de propriété
Insérer ici l'image Descriptionessai
Insérer ici l'image Description

En utilisant le modèle JDBC est des opérations complètes CRUD

Enregistrer opération
Insérer ici l'image Description
pour modifier l'opération de
Insérer ici l'image Description
suppression
Insérer ici l'image Description
requête
requête une propriété
Insérer ici l'image Description
requête renvoie une collection d'objets ou
Insérer ici l'image Description
paquet de données
Insérer ici l'image Description

entrée de transaction ressort

Qu'est-ce qu'une transaction

Transaction: un ensemble d'opérations logiques sur la composition des unités respectives de l'opération de jeu, que ce soit tout réussir ou tout échec.

Caractéristiques de la transaction

原子性:事务不可分割
一致性:事务执行前后数据完整性保持一致
隔离性:一个事务的执行不应该受到其他事务的干扰
持久性:一旦事务结束,数据就持久化到数据库

Si vous ne considérez pas l'isolement causé par des problèmes de sécurité

读问题
	脏读		:一个事务读到另一个事务未提交的数据
	不可重复读	:一个事务读到另一个事务已经提交的update的数据,导致一个事务中多次查询结果不一致
	虚读、幻读	:一个事务读到另一个事务已经提交的insert的数据,导致一个事务中多次查询结果不一致。
写问题
	丢失更新

La lecture résoudre le problème

设置事务的隔离级别
	Read uncommitted:未提交读,任何读问题解决不了。
	Read committed	:已提交读,解决脏读,但是不可重复读和虚读有可能发生。
	Repeatable read	:重复读,解决脏读和不可重复读,但是虚读有可能发生。
	Serializable	:解决所有读问题。

API de gestion des transactions de printemps

PlatformTransactionManager: Plate-forme Gestionnaire de transactions

平台事务管理器:接口,是Spring用于管理事务的真正的对象。
	DataSourceTransactionManager:底层使用JDBC管理事务
	HibernateTransactionManager	:底层使用Hibernate管理事务

TransactionDefinition: informations de définition de transaction

事务定义:用于定义事务的相关的信息,隔离级别、超时信息、传播行为、是否只读

TransactionStatus: état des choses

事务状态:用于记录在事务管理过程中,事务的状态的对象。

La relation entre l'API de gestion des transactions:

Spring进行事务管理的时候,首先平台事务管理器根据事务定义信息进行事务的管理,在事务管理过程中,产生各种状态,将这些状态的信息记录到事务状态的对象中。

comportement de propagation des transactions de printemps

Spring中提供了七种事务的传播行为:
	保证多个操作在同一个事务中
		PROPAGATION_REQUIRED	:默认值,如果A中有事务,使用A中的事务,如果A没有,创建一个新的事务,将操作包含进来
		PROPAGATION_SUPPORTS	:支持事务,如果A中有事务,使用A中的事务。如果A没有事务,不使用事务。
		PROPAGATION_MANDATORY	:如果A中有事务,使用A中的事务。如果A没有事务,抛出异常。

	保证多个操作不在同一个事务中
		PROPAGATION_REQUIRES_NEW	:如果A中有事务,将A的事务挂起(暂停),创建新事务,只包含自身操作。如果A中没有事务,创建一个新事务,包含自身操作。
		PROPAGATION_NOT_SUPPORTED	:如果A中有事务,将A的事务挂起。不使用事务管理。
		PROPAGATION_NEVER			:如果A中有事务,报异常。

	嵌套式事务
		PROPAGATION_NESTED	:嵌套事务,如果A中有事务,按照A的事务执行,执行完成后,设置一个保存点,执行B中的操作,如果没有异常,执行通过,如果有异常,可以选择回滚到最初始位置,也可以回滚到保存点。

La gestion des transactions de printemps

La gestion de l' environnement construit des transactions de printemps des
classes pour créer des interfaces et la mise en œuvre de services
Insérer ici l'image Description
créée classe interface et la mise en œuvre DAO
Insérer ici l'image Description
configuration du service et DAO: Spring pour gérer
Insérer ici l'image Description
la préparation et la méthode de transformation de l' argent déduisant l' argent dans DAO:
pool Configurer la connexion JDBC et modèles
Insérer ici l'image Description
dans DAO injection modèle Jdbc:
Insérer ici l'image Description
essai

La gestion des transactions de printemps: une: transaction programmatique (la nécessité d'un code à la main) - Apprendre

Étape 1: Configurer la plate - forme du gestionnaire de transactions
Insérer ici l'image Descriptionétape: Spring fournit une gestion des transactions classe modèle de
gestion de configuration du modèle de classe affaires de
Insérer ici l'image Descriptionla troisième étape: l' injection gestion des transactions de modèle dans la couche d'affaires
Insérer ici l'image Description
gestion des transactions de code écrit
Insérer ici l'image Descriptiontest:

La gestion des transactions de printemps: deux types: la gestion déclarative des transactions (en configurant) -aop

XML mode de gestion déclarative des transactions de
la première étape: l'introduction du kit de développement aop
Deuxième étape: Transfertl'environnement de récupération
Troisième étape: Configurer le gestionnaire de transactions
Insérer ici l'image DescriptionQuatrième étape: Configurer améliorée
Insérer ici l'image DescriptionCinquième étape: Configurer l'AOP
Insérer ici l'image Descriptiontest
de manière déclarative de notes la gestion des transactions
de la première étape: la miseplace d'un kit de développement aop
étape: transfert pour restaurer l'environnement
Troisième étape: configurer le gestionnaire de transaction
Insérer ici l'image Descriptionétape 4: Activerannotations affaires
Insérer ici l'image Description
cinq étapes: annotations ajoutez dans la couche d'affaires
Insérer ici l'image Description

Publié 60 articles originaux · louange won 4 · Vues 1264

Je suppose que tu aimes

Origine blog.csdn.net/qq_43966129/article/details/105295511
conseillé
Classement