Vous pouvez utiliser Spring à la place des EJB. Et je le recommande! Cependant, les deux alternatives géreront les fonctionnalités d'entreprise telles que la gestion des transactions et la sécurité pour vous d'une manière excellente. Avec Spring ou non, vous avez toujours besoin d'un conteneur Servlet pour vos pages Web. Le conteneur Servlet peut démarrer le conteneur Spring si vous configurez correctement le fichier web.xml du conteneur Servlet.
Un exemple gestion des transactions avec Spring:
@Transactional
public void execute(..) {..}
Et avec EJB 3.x:
@TransactionAttribute
public void execute(..) {..}
Comme vous le voyez, les deux alternatives vous propose d'ajouter l'entreprise propose déclarative.
jour après avoir lu le commentaire de HenryOS:
Il est possible d'avoir toute la logique métier sur un serveur.
Une solution peut être d'utiliser les services Web entre les clients (serveur WEB et gros clients Swing). C'est une solution assez sympa et faiblement couplée.
Si vous avez besoin de plus de rapidité, vous pouvez utiliser la technologie Protocol Buffer de Google ou une technologie similaire. Une chose intéressante est qu'avec Web Services ou Protocol Buffer, vous avez toujours besoin d'un conteneur Web comme Tomcat ou Jetty sur le serveur avec la logique métier, car il doit fournir les services Web pour les clients. Tous les frameworks de services Web tels que Spring WS, CXF et Apache Axis 2 utilisent une servlet.
En ce qui concerne les couches, je recommanderai deux couches sur le serveur WEB, puisque vous ne présentez et ne récupérez des données que pour les envoyer au serveur d'entreprise. Sur le serveur d'entreprise, je vais recommander trois couches. La couche supérieure pour gérer les services Web, la couche de gestion au milieu et une couche d'intégration contre la base de données et d'autres systèmes d'entreprise en bas. Enfin, si vous utilisez CXF ou Spring WS avec JAXB, toutes vos classes sur le serveur d'entreprise peuvent être écrites en tant que POJO! Il s'applique également à plusieurs autres frameworks Web Service bien écrits.
J'espère que cela répond à votre question!
d'abord à quoi que ce soit, merci pour votre réponse ... et je comprends ce que vous dites, mais ma question est de savoir s'il est possible d'avoir une logique métier sans servlets/JSP/EJB .. c.-à-d. Je souhaite avoir les servlets/JSP (couche de présentation pour navigateur Web) sur le serveur Web et sur un autre serveur (App Server) la logique métier (objet Sevice, objet d'accès aux données et objets de domaine) à utiliser par Application Client Ordinateur de bureau (directement) et navigateur Web (jusqu'à servlets/jsp) – HenryOS
merci de répondre si rapidement. donc ... pour finir ... si je dois fournir le service de logique métier aux Serveurs JSP/Servlets (sur Serveurs Web) ou au client de bureau Application, ONLY WAY doit implémenter des services web signifie des servlets et donc un conteneur web sur le serveur d'application ??? – HenryOS