-
RoR - Django Like
Bonsoir !
Un ami (fan de ruby et notament de Ruby on Rails) et moi même (fan de python et notement Django) avont décider de developper un site web en JEE.
Actuelement nous recherchons des technologie qui se rapproche de nos framework préféré afin de développer ce site web, nos besoins principaux sont :
- Un mapping de base de données simple et efficace ( a priori hibernate semble etre la solution)
- Un systeme de template puissant (avec heritages, inclusions, ... ça serai un + )
- Un systeme de gestion de formulaire serait bien.
- L'integration d'ajax serai un + mais bon on était plutot partie pour se debrouiller seuls.
A la base on penser le faire en struts, mais apres m'etre un peu renseigné, il semblerai que struts commence a etre deprecié... et le but etant d'acquerir de l'experience ... sinon j'ai entendu parler de spring, de JBOSS Seam, de JSF, de Tapestry, ... mais sans vraiment savoir de quoi il s'agissait .
Si vous pouviez m'aiguiller dans notre decision...
Merci !
-
Bonsoir anthyme,
si tu es interesse tu peux aller voir mon projet Open source gestcv sur http://gestcv.sourceforge.net/fr/index.html qui est uen application WEB base sur Struts/Hibernate Spring et AjaxTags.
J'ai tenter de decrire l'architecture, mes choix techniques et de décrire struts et spring.
Ca te donnera peut etre une idee un peu plus claire de ces frameworks. Il y a beaucoup de debat qui dise que struts est mort, mais je ne pense pas qu'a l'heure actuelle il soit completement remplace (tous les projets que je developpe pour mon entreprise se font en struts). Je sais qu'il y la version de struts (version 2) qui fusionne plusieurs frameworks (WebWork je croies), mais je n'en sais pas plus.
En ce qui concerne JSF qui est une approche composant evenement (un peu comme les WebForm en .Net, (ca va surement en faire hurler quelques uns))
je pense qu'il faut se tourner sur Struts Shale (qui n'a rien a voir avec struts) qui ajoute des elements manquants a la specification JSF. JSF, j'en ai fait un tout petit peu il y a longtemps, je ne maitrise pas, mais je pense que sans un bon IDE, il n'a pas trop d'interet a faire du JSF.
J'espere que j'aurrais repondu a vos questions. Bon courage
Angelo
-
Bonjour !
Merci de tes explications et du lien vers ce projet dont je pense pouvoir m'inspirer ! Mais y a certaines choses qui me choque : Je pensais que Spring et Struts etaient des concurant (tout les 2 MVC) et la tu les utilisent ensemble :?
Ces "frameworks" ne sont peut etre en fait que des librairies ? et qu'est qui s'occupe de faire "tourner" tout ça sous forme de serveur ?
Sinon j entend parler beaucoup des EJB (pas que en bien), cela apporte vraiment par rapport un hibernate ?
merci !
-
Bonjour,
Struts lui s'occupe uniquement de faire du MVC, alors que Spring est decoupe en plusieurs modules
le framework Spring est decoupe en plusieurs modules (WEB Layer, Business Layer,...). Moi j'utilise la partie Business Layer, pour gerer les transactions.
Le module MVC de spring je ne le connais pas, je ne pourrais pas te faire de comparaison avec struts.
Oui ces frameworks sont en fait des libraries jar qui sont dans WEB-INF/lib (struts.jar, spring.jar,....)
Sinon pour les EJB, j'ai fait que des EJB 2.0, et c'est un cauchemard, c lent, t'es complementenyt bride, tu ne peut pas faire de pagination, le cauchemard!
Mais il y a les EJB 3.0 qui sont apparues, je ne connais pas mais je sais que ca ressemble tres fortement a Hibernate.
Angelo
-
Je viens de voir un livre "Spring en pratique" (ou un nom dans ce genre la) qui était justement sur ce style d'architecture (AJAX/STRUTS/SPRING/HIBERNATE) donc cela pourrai me donner en plus de la doc pédagogique sur ces méthodes de developpement, donc je pense que je vais partir sur une architecture de ce type !
sinon tu ne m'as répondu à propos du "qu'est qui transforme toutes ces biblioteques en serveur" ? y a un apache ou tomcat qui tourne derriere ?
merci beaucoup de ces info je me sent bien plus orienté :)
-
Effectivement il te faut un serveur (moteur de servlet), celui que j'utilise est Tomcat. Apache n'est pas un moteur de servlet, donc tu ne pourras pas executer l'application sur Apache. Un moteur de servlet est capable d'interpreter les JSP, qui sont les pages de ton application.
Struts, Spring,... ne sont que des libraries qui sont contenues dans WEB-INF/lib. Dans la distribution de gestcv, tu as un war, qui est une sorte de zip qui contient les classes compiles, les JSP, les resources javascript,..., Quand tu arras installe tomcat, tu deposes le war dans le repertoire TOMCAT_HOME/webapps, tu lances tomcat et il decompressera le war.
Tu pourras voir qu'il y a un repertoire WEB-INF/lib qui contient toutes les librarires struts, spring...
J'espere que j'aurrais repondu a toutes tes questions.
Angelo
-
ok ok ok :)
bon je pense que tu as repondu a mes intérogations, je t en remerci beaucoup et je vais m'y mettre au plus vite ;)