Question

Fondé sur la réponse acceptée à cette question , j'ai créé un NetBeans environnement / tomcat. En testant cette configuration, j'essaie de créer une application Java Web / Web, mais je suis dérouté par le choix des frameworks pour cette application de test.

Les choix sont les suivants:

  • Spring Web MVC 2.5
  • Visages JavaServer
  • Struts 1.3.8
  • Hibernate 3.2.5

Dans ma lecture (googler & SO) et assez vite perdu dans les bois, je songe donc à en choisir un et si cela ne fonctionne pas, à changer plus tard / migrer vers un autre. Une telle approche serait-elle réalisable?

Contexte du projet

(Doit être basé sur Java en raison du code hérité)

Il utilise une applet auto-signée pour effectuer le rendu côté client & amp; interaction;
Les servlets récupèrent les ensembles de données demandés au client;
La base de données pouvant se trouver sur un serveur distant, j'ai donc l'intention d'utiliser JDBC pour y accéder;

Le système existant était basé sur CORBA (ACE / TAO) avec de nombreux modules C ++ devant être traduits en Java, et les modules Java existants (heureusement peu nombreux) qui effectuent des appels CORBA doivent être modifiés pour pouvoir utiliser le nouveau langage Java traduit. modules.

Si vous pouvez proposer une meilleure approche pour gérer ce projet, merci de me le dire.

(Ce projet a toutes les caractéristiques de ce que j'aime: il est intéressant, stimulant et j'apprends quelque chose de nouveau)

Était-ce utile?

La solution

Tout d’abord, il n’est pas inutile de regarder de près le Spring Framework dans son intégralité général. La documentation est assez bonne à partir du module de base qui fonctionne, c'est jusqu’à la couche Web MVC (où vous pouvez décider de l’utiliser, par exemple, l’intégration de Struts est également possible - mais j’ai trouvé que Struts était toujours compliqué de toute façon). Hibernate est probablement le framework Mapper de relation d'objet le plus populaire. Il est utilisé pour stocker, interroger et récupérer vos objets de modèle de domaine (tout ce que vous souhaitez stocker dans la base de données), mais n'a rien à voir avec la couche Web.

Personnellement, je n'aime pas JSF (un autre monstre de spécification qui prend beaucoup plus de temps à entrer que nécessaire). Si vous préférez une approche basée sur les widgets (en plaçant votre page avec des composants plutôt que de produire du vieux HTML ordinaire), vous pouvez consulter Google Web Toolkit .

Une autre solution printanière est GRails . C'est vraiment amusant à utiliser et même si vous devez apprendre un autre langage (de script) (appelé Groovy), vous pouvez toujours utiliser toute votre classe héritée Java dans Framework, car les classes Groovy sont compatibles avec les classes Java (et inversement).

Et d'ailleurs. Je pensais que CORBA est une technologie / protocole / standard qui permet notamment d’accéder aux méthodes et aux objets indépendamment du langage. Wikipedia:

  

Le courtier de demande d'objet commun   Architecture (CORBA) est un standard   défini par le groupe de gestion d'objets   (OMG) qui active les composants logiciels   écrit dans plusieurs langages informatiques   et en cours d'exécution sur plusieurs ordinateurs à   travailler ensemble, c’est-à-dire soutenir   plusieurs plates-formes.

Alors pourquoi devez-vous traduire les modules C ++ pour parler à Java?

Autres conseils

Tout d’abord, rayez Hibernate de votre liste - bien que l’on vous conseille de l’utiliser si vous avez une exigence ORM qui n’est pas liée au niveau Web.

Ensuite, je pense que vous avez deux choix:

  • Spring MVC et JSF
  • Struts

Si vous vous engagez dans l'une ou l'autre voie, vous vous engagez dans cette / ces API (s) et qu'un commutateur à une date ultérieure ne sera jamais indolore.

Mon conseil serait:

  • utilisez Spring MVC - vous utiliserez probablement Spring de toute façon, c’est donc un choix naturel.
  • ignore JSF, écrivez le code HTML vous-même, utilisez JSTL pour rendre les beans.
  • utilisez JQuery / JavaScript pour enrichir l'expérience utilisateur.
  • utilisez Hibernate pour la persistance des objets.

Je pense que c’est une bonne idée de choisir le minimum et d’ajouter si nécessaire. Il y a de fortes chances que vous gagniez ainsi en simplicité.

Une idée pourrait être de commencer avec Spring en tant que votre "grand schéma de choses", et la technologie d'intégration. Ajoutez ensuite les compléments nécessaires:

  • persistence: Hibernate
  • javaScript: choisissez une bibliothèque js qui va bien avec le module Spring MVC que vous utilisez
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top