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 :

Est-ce que Spring ce n'est pas un peu: développer en XML au lieu de développer en Java?


Sujet :

Spring Java

  1. #1
    Membre très actif

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 608
    Par défaut Est-ce que Spring ce n'est pas un peu: développer en XML au lieu de développer en Java?
    Bonjour,

    J'ai participé pendant quelques mois à un projet en Spring 3.0 et j'ai voulu approfondir. J'ai acquis le livre "Spring par la pratique" et j'ai lu ses premiers chapitres sur l'inversion de contrôle et le container léger.
    Je me souviens que mon équipe avait beaucoup utilisé l'auto-wiring et la détection automatique pour avoir un fichier contexte plus réduit. Mais à la longue, bien que je n'étais pas assez expérimenté pour en comprendre les raisons, l'avait regretté un peu.

    Le livre suggère la déclaration individuelle des objets mis à disposition par le container dans le fichier de contexte. De nombreuses déclarations sont décrites, et quelques balises ne doivent pas être oubliées.
    En vérité, je commence à m'inquiéter. Avec Spring et cette approche, ne vais-je pas remplacer de la programmation et du déboggage Java par de la déclaration et du déboggage XML? Car l'ensemble de l'XML à produire me semble assez important, et il me rappelle les riches heures de JEE 1.3 où l'on en écrivait tout autant en descripteurs de toutes sortes et fichiers xml auxiliaires, qu'en Java proprement dit, pour notre plus grande difficulté.

    Et pardon de poser le problème ainsi, parce qu'en fait je ne veux pas débuter la moindre polémique mais seulement observer à quel hauteur mon interprétation est fausse, mais: là où JEE 6 a réduit quasiment à néant l'emploi de descripteurs XML par l'usage d'annotations paramétrées (et je gage qu'il s'est lourdement inspiré de Spring pour y parvenir), Spring lui n'y est pas parvenu?

    J'ai l'impression (mais peut être que je me trompe?) que des annotations auraient pu suffire à bien des endroits pour épargner des déclarations XML.

    Pourquoi XML est-il si prégnant dans Spring?
    La gestion des objets mis à disposition par le conteneur léger ne peut vraiment pas s'en passer?

    En vous remerciant,

    Grunt.

  2. #2
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Billets dans le blog
    2
    Par défaut
    Mais en fait tu peux utiliser 3 modes de configuration dans Spring (et les combiner d'ailleurs) :

    - XML (le plus connu peut être)
    - Annotations
    - API

    C'est vrai que l'on parle peut être beaucoup de la config XML mais les annotations restent possibles.
    Maintenant c'est vrai que si tu oublies de la config, c'est au démarrage que tu vois les problèmes mais même quand on fait l'équivalent en Java pur (avec ou sans Spring) on retrouve aussi ces problèmes (des null qui se trimbalent). La log Spring est d'ailleurs bien faite pour détecter les problèmes de config au démarrage (config XML ou pas)

  3. #3
    Membre très actif

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 608
    Par défaut
    Merci!
    Je poursuis en ce moment dans Spring AOP, où je vois que l'on peut marquer son aspect d'une annotation @Aspect, mais que pour autant, il faut tout de même déclarer un (ou plusieurs?) tags <aop-aspectj-autoproxy /> dans le contexte.

    Spring ne s'introspecte pas tout seul pour découvrir l'annotation @Aspect dans les classes pour y réagir comme il faut? Pourquoi ces indications XML supplémentaires sont-elles nécessaires? À quoi servent-elles?
    Je n'arrive pas à faire à faire pendant de cette directive XML avec l'AspectJ que je connais.


    Par ailleurs, Pour l'AOP sous Spring, qu'est qui est le plus sain? Déclarations en XML ou par annotations?

  4. #4
    Membre émérite Avatar de benratti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    471
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 471
    Par défaut
    Citation Envoyé par grunt2000 Voir le message
    Merci!
    Par ailleurs, Pour l'AOP sous Spring, qu'est qui est le plus sain? Déclarations en XML ou par annotations?
    De manière générale dans Spring, il y a des débats pour l'utilisation de la configuration via les annotations vs via XML. Je ne dirais pas qu'il y a une approche plus saine...

    La configuration XMl va permettre de concentrer ta configuration dans des fichiers XMl et ainsi d'avoir une vue centralisée de ta configuration. A contrario, les annotations créées des dépendances de ton code "metier" au framework Spring... mais bon, ça peut éventuellement être acceptable. Les annotations peuvent également simplifier la configuration (mais vont nécessité une recompilation en cas de changement de config)

    Bref, les deux ont leurs avantages... il faut seulement éviter de mixer trop fortement les deux car cela peut alors amener de la confusion.

Discussions similaires

  1. Réponses: 5
    Dernier message: 02/12/2009, 14h57
  2. est ce que je suis infecté ou pas?
    Par rokirakat dans le forum Sécurité
    Réponses: 4
    Dernier message: 29/04/2008, 18h31
  3. Est-ce que le session id est unique à vie ou pas ?
    Par davitz38 dans le forum Langage
    Réponses: 4
    Dernier message: 18/12/2007, 17h31
  4. Réponses: 5
    Dernier message: 04/07/2006, 10h17
  5. [Zope]Est-ce que la doube-clic est gérable??
    Par keumlebarbare dans le forum Zope
    Réponses: 2
    Dernier message: 09/06/2005, 11h56

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