IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

Comment gérer les aspects transactionnels ? [Framework]


Sujet :

Spring Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 55
    Par défaut Comment gérer les aspects transactionnels ?
    quelqu'un peut m'aider pour trouver un bon tuto ou un article expliquant les annotations dans Spring <tx:annotation-driven > et les <tx:advice>.
    Je ne pense pas qu'il en existe dans les tutos de developpez.com.
    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 55
    Par défaut explication config Spring
    quelqu'un pourrait m'expliquer ces lignes de fichier de config spring :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <!-- This marker creates the full auto-proxy infrastructure
    		that is necessary for applying Spring's <b>@Transactional</b> annotation
    		By default,it will refer to the transaction manager bean named "transactionManager".
    	 NOT USED TODAY -->
    	<tx:annotation-driven transaction-manager="txManager"/>
     
            <!-- the transactional advice (See the <aop:advisor/> bean below) -->
     
            <tx:advice id="txAdvice" transaction-manager="txManager">
    	  <tx:attributes>
    		<!-- all methods starting with 'get' are read-only -->
    		<tx:method name="get*" read-only="true"/>
    		<!-- other methods use the default transaction settings (see below) -->
    		<tx:method name="*"/>
    	  </tx:attributes>
            </tx:advice>

  3. #3
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Bonjour,

    Pour comprendre l'AOP : http://ewawszczyk.developpez.com/tut...va/spring/aop/

    Dans ton cas, tu déclares le scan des annotations @Transactional et tu déclares aussi un advice (l'équivalent XML du @Transactional appliqué sur des méthodes) qui, pris tout seul ne sert à rien.

    Soit tu fais tout en annotations et donc tu utilises @Transactional et ses différents attributs au niveau des méthodes.

    Soit tu fais tout en xml et là je te renvoies vers la doc pour :
    • création d'un advice
    • création d'un aspect englobant un advice et un pointcut

    ... ceci pour tous tes services à rendre transactionnels (ou de manière plus rationalisée en te basant sur des conventions et un pointcut / advice plus abstrait ...)

    Bien évidemment, on peut mixer les 2 si réelle contrainte.

    Eric

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 55
    Par défaut
    Ce que je ne comprend pas c'est cette ligne pris à part quesqu'elle fait exactement :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    	<tx:annotation-driven transaction-manager="txManager"/>

    Merci pour les liens

  5. #5
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    La ligne en question indique à Spring de rendre transactionnels toutes les méthodes annotées @Transactional et de leur associer le gestionnaire transactionnel identifié par "txManager" (bean spring)

    Cela suppose bien sur que les classes concernées ont été chargées par Spring par les mécanismes habituels (déclaration xml, annotation @Component ou dérivées comme @Service, etc.).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AspectJ] Comment Gérer les héritages en Aspect
    Par laffonda dans le forum Autres
    Réponses: 8
    Dernier message: 26/06/2010, 12h24
  2. Réponses: 2
    Dernier message: 08/07/2005, 10h40
  3. [C#/SQL] Comment gérer les exceptions d'une Procédure stockée ?
    Par thomas_strass dans le forum Accès aux données
    Réponses: 10
    Dernier message: 06/07/2005, 10h40
  4. Comment gérer les valeur Nulles dans une requête ?
    Par sondo dans le forum Bases de données
    Réponses: 3
    Dernier message: 16/03/2005, 11h02
  5. Comment gérer les espaces blancs?
    Par Lambo dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/05/2003, 09h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo