J'étudie l'utilisation des frameworks web avec mon application web Java. Mes exigences de base sont la facilité de maintenance, la testabilité et la répétition.Est-il possible d'utiliser un framework web sans être dépendant de ce framework?
J'ai exploré l'écriture de ma propre application de type MVC en utilisant une sorte de modèle de contrôleur frontal et des JSP pour les vues. L'avantage de ceci est que j'ai le contrôle complet de tous les aspects de mon application web et si je le conçois correctement, il ne devrait pas être difficile de passer à un cadre plus testé à l'avenir si je le souhaite. Cependant, le fait est que je dois réinventer la roue pour ainsi dire.
J'entends de bonnes choses sur les frameworks web actuellement disponibles. Certaines technologies que j'ai regardées sont Spring, Wicket, Struts, Guice, Hibernate et Tapisserie.
Je me méfie un peu de Tapestry et Wicket. Je ne sais pas trop à leur sujet, mais ils semblent dévier de la formule servlet-> model jsp-> view. Je ne suis pas sûr si je suis à l'aise avec cela. Bien, j'entends que Wicket est en fait le meilleur ajustement avec Guice et est extrêmement testable. Le printemps semble être un bon ajustement, mais je me méfie beaucoup des cadres qui tentent de tout faire. J'aimerais utiliser spring-MVC, mais puis-je échanger avec d'autres composants? Puis-je par exemple utiliser Guice comme moteur de DI en utilisant Spring-MVC comme framework?
J'ai brièvement examiné Struts mais il semble trop complexe pour mes besoins et semble encore être un paquet complet. Je n'ai jamais utilisé Hibernate, mais cela semble être la norme pour ORM et si c'est quelque chose comme ActiveRecord (que j'ai seulement été exposé un peu), je suis sûr que cela correspond à mes besoins.
Je n'ai jamais vraiment utilisé Guice mais les gens semblent vraiment aimer, et je suis un fan de DI en général même si je ne suis pas sûr comment il est utilisé dans une application réelle. Fondamentalement, je suis seulement vraiment confiant avec l'écriture Servlets/JSP. Je ne suis pas opposé à l'apprentissage de technologies alternatives, mais je cherche des conseils quant à ceux qui me bénéficieraient vraiment.
Si je peux créer une application MVC en utilisant des Servlets et des JSP, cela vaut-il la peine d'incorporer Spring? Ou devrais-je simplement utiliser Servlets/JSP et incorporer un moteur DI comme Guice?
Je suis assez sûr que je voudrais utiliser Hibernate pour ORM, mais j'entends dire que cela peut être assez complexe. Tout ce que je cherche vraiment, c'est un moyen de mapper mes POJO à une base de données, donc s'il y a quelque chose de mieux/plus facile à utiliser, je suis prêt à le rechercher. Je me sens perdu et je cherche un peu de direction de personnes connaissant dans la région, toutes les opinions sur l'une de ces questions seraient grandement appréciées. Merci!