Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Nouveau Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2012
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : octobre 2012
    Messages : 77
    Points : 29
    Points
    29

    Par défaut fichier applicationContext xml

    Bonjour tout le monde,

    Quelqu'un pourrait-il m'expliquer le code xml suivant:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <beans>
    	<!-- sessionFactory  -->
    	<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    		<property name="configLocation">
    			<value>classpath:hibernate.cfg.xml</value>
    		</property>
    		<property name="configurationClass">
    			<value>org.hibernate.cfg.AnnotationConfiguration</value>
    		</property>
    	</bean>
     
     
    	<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    		<property name="sessionFactory" ref="sessionFactory" />
    	</bean>
    	<bean id="transactionProxy" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
    		<property name="transactionManager">
    			<ref bean="transactionManager" />
    		</property>
    		<property name="transactionAttributes">
    			<props>
    				<prop key="insert*">PROPAGATION_REQUIRED</prop>
    				<prop key="update*">PROPAGATION_REQUIRED</prop>
    				<prop key="save*">PROPAGATION_REQUIRED</prop>
    				<prop key="*">PROPAGATION_REQUIRED</prop>
    			</props>
    		</property>
    	</bean>
    Je veux savoir surtout à quoi servent les lignes [13 à 19], et je vois pas pourquoi ajouter les <prop key="insert*">.... puisque on les a dans nos bibliothèque hibernate!!

    Merci

  2. #2
    Membre confirmé
    Avatar de karbos
    Inscrit en
    novembre 2008
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : novembre 2008
    Messages : 154
    Points : 245
    Points
    245

    Par défaut

    Ce sont des paramètrages qui vont te permettre de définir de manière abstraite la méthode transactionnelle par défaut...
    Par exemple, avec cette config, supposons que tu as une table d'utilisateurs, liée à une table de login/password criptée. Disons que si tu rajoutes un utilisateur. Celui doit respecter une contrainte dans la base de données : il faut que son login et son mot de passe soit uniques. Si ce n'est pas le cas, cela va interrompre la transaction au moment où tu essaies d'écrire le mot de passe, alors que tu as commencé à modifier la table des utilisateurs... Et cette configuration dit à Spring qu'il faudra alors rétablir la base avant la modification de cet utilisateur, c'est-à-dire dans l'état où elle était avant la transaction.
    Si tu veux plus d'info sur la transaction selon Spring, je te conseil de lire la JavaBible en français :
    http://www.jmdoudoux.fr/java/dej/cha...ansactions.htm

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •