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 :

[Transaction] HibernateDaoSupport + JdbcTemplate


Sujet :

Spring Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 143
    Par défaut [Transaction] HibernateDaoSupport + JdbcTemplate
    Bonjour

    Si j'utilise un jdbcTemplate dans une classe qui étend HibernateDaoSupport, est-ce-que les requêtes SQL lancées avec du code Hibernate (HQL ou Criteria) et celles lancées avec du code SQL pur grâce au jdbcTemplate utiliseront la même connexion à la base et participeront à la même transaction ?

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public class MonDaoImpl extends HibernateDaoSupport {
     
        private JdbcTemplate jdbcTemplate;
     
        public void setDataSource(DataSource dataSource) {
            this.jdbcTemplate = new JdbcTemplate(this.dataSource);
        }
     
        // Mes méthodes où aussi bien du code Hibernate et SQL pur pourrait être lancé ....
     
    }
    Conf Spring

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    	<bean id="monDao" class="com.society.appli.dao.MonDaoImpl">
    		<property name="sessionFactory" ref="sessionFactory" />
    		<property name="dataSource" ref="dataSource" />
    	</bean>
    Alors ?! Puis-je utiliser ce mix de Hibernate et SQL pur avec JdbcTemplate en toute sécurité vis à vis des transactions Spring déclarées dans la couche utilisant la couche Dao ?

    Merci d'avance pour vos réponses.

  2. #2
    Membre expérimenté Avatar de aymen83
    Inscrit en
    Décembre 2007
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 271
    Par défaut
    salut,
    normalement tu dois avoir configurer jdbcTemplate en lui affectant une datasource===> donc c'est la meme connection

    quant à la transaction est ce la meme ou non?
    normalement si un process est entrain de l'exécuter je pense que c'est pas possible pour un autre process de le faire avant que le premier ne termine sinon tu te trouvera face à un deadlock

    Q: pourquoi ce mélange?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2009
    Messages : 10
    Par défaut
    Oui ca devrait etre la meme connection.
    Par contre pour la transaction cela dépend de la manière dont tu les a configurer dans ton fichier de conf spring. Si tu n'as rien fait de spécial en principe c'est la meme transaction.

  4. #4
    Candidat au Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2
    Par défaut Gestion de transactions
    En fait, en théorie si tu as besoin de melanger du hibernate et du jdbc, il faut que tu declares dans ta conf spring les gestionnaires de transactions et les proxies gerant les transactions pour jdbc et pour hibernate.

    Tes DAO jdbc tu pourrais les implémenter en etendant JdbcDaoSupport (il faut lui passer la data source).

Discussions similaires

  1. gestion d'erreur et de transactions....
    Par Dge dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/02/2006, 22h20
  2. Apropos des Transactions au sein d'un Stored Procedure
    Par Sarbacane dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 16/11/2004, 08h21
  3. [Petite requête] Nombre de transactions par jour
    Par Braim dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 15/04/2003, 10h53
  4. [PostgreSQL]transactions
    Par adri1 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 10/04/2003, 14h37
  5. Transaction avec DoCmd.runsql ???
    Par Gandalf24 dans le forum VBA Access
    Réponses: 29
    Dernier message: 11/02/2003, 20h35

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