[J2EE] Différence entre Tomcat et JOnAS

Fermé
n@n¤u - 11 avril 2006 à 09:23
 Chakahot - 10 oct. 2009 à 04:56
Bonjour,

je voudrais avoir quelques précisions à propos de certains points concernant J2EE.

En fait, je voudrais savoir quelle est la principale différence entre Jonas et Tomcat.
Plus concrétement, j'ai besoin de développer une appli web.
J'avais pensé d'une part à utiliser des Servlet/JSP, mais ensuite j'ai pensé à Struts. Je ne sais pas pour quoi je devrais utiliser telle ou telle techno.

Je reviens à ma question principale : pourquoi choisirai-je Tomcat au lieu de JOnas (ou inversemment) ?

Et pour terminer, encore une question de choix. Quelle est la diférence entre JDBC et EJB ?

J'espère avoir été clair et merci d'avance pour vos éclaircicements.

10 réponses

Juste un truc, les précisions demandées dans le post original n'ont rien a voir les unes avec les autres.
Je m'explique.

La différence entre Jonas et Tomcat :
Tomcat permet de déployer des applis Web depuis un serveur, ces appli étant communiquées au serveur sous forme de fichier .war

Jonas permet lui de faire cela mais aussi, inclus tout un ensemble de service (messagerie, sécurité, architecture N-tiers). Grosso modo on peut donc voir Jonas comme un tomcat améliorer

Ensuite en ce qui concerne les EJB et le JDBC ce sont deux choses totalement différente. D'un coté les EJB sont finalement rien de plus que des classes Java permettant de modéliser des processus métier (i.e un programme Java que tu rend "interrogeable" par l'intermediaire d'un browser web entre autre)
Les JDBC tiennent pour Java DataBase Connector c'est a dire des drivers pour permttre a une appli Java de fonctionner en utilisant un type de base de données spécifique (d'ou la presence de JDBC propre a MySQL, Oracle, PostGres, ....)
16
maily Messages postés 7556 Date d'inscription lundi 26 juin 2000 Statut Contributeur Dernière intervention 23 juin 2023 453
11 avril 2006 à 09:52
Bonjour,

je ne sais pas trop quelle est la différence entre les deux serveurs d'applications cités. A mon avis, ils sont à peu près tous équivalents avec chacun des limitations!!

Sinon:

JDBC : java database connectivity. C'est ce qui sert à te connecter à une base de données avec java
EJB: Enterprise Java Bean. C'est une technologie utilisée pour développer des composants Java réutilisables et fonctionnant sur des serveurs d'applications à la norme J2EE.

Les EJB peuvent utiliser le JDBC.

2
OK, merci pour la précision.
Donc JDBC doit etre plus simple d'utilisation que les EJB.

J'ai deux petites questions : que veux-tu dire par "composants Java réutilisables " ?.
Et : qu'est ce que les EJB m'apporteraient de plus que les EJB ?

Merci pour tout.
0
n@n¤u Messages postés 195 Date d'inscription mardi 30 septembre 2003 Statut Membre Dernière intervention 24 octobre 2008 10 > n@n¤u
11 avril 2006 à 10:09
je voulais dire :
qu'est ce que les EJB m'apporteraient de plus que JDBC ?
0
maily Messages postés 7556 Date d'inscription lundi 26 juin 2000 Statut Contributeur Dernière intervention 23 juin 2023 453
11 avril 2006 à 10:18
ça dépend de ce que tu veux faire avec!

Utilise JDBC si tu veux interoger simplement une base de données.

les EJB sont des composants transactionnels Java sous formes d’objets.
Si tu veux faire une appli serveur très compliqués, du genre, gestion d'anciens (exemple copainsdavant), là, tu utiliseras les EJB. ça te permettra de gérer des objets de BD compliqués très simplement. Par exemple, une personne avec une adresse, pour la modification de son adresse, tu appelleras une fonction "modifierAdresse" alors qu'avec JDBC, tu devras écrire ta requête SQL.
Les EJB offrent la persistance, le traitement métier, la gestion des transactions et les fonctionnalités de traitement distribuées aux applications d'entreprise.

Donc, tout dépend de la complexité de ton appli.
L'utilisation d'EJB demande une période de spécifications plus importante que l'utilisation de JDBC.
0
n@n¤u Messages postés 195 Date d'inscription mardi 30 septembre 2003 Statut Membre Dernière intervention 24 octobre 2008 10
11 avril 2006 à 11:21
J'ai déjà eu l'occasion d'entendre parler des ejb et j'ai compris que c'était assez compliqué à comprendre.
Si j'ai bien compris JDBC serait plus adapté pour consulter une BDD. Mais il est toujours possible de faire des modifs en utilisant des requetes SQL.

Je crois que je vais les préférer JDBC aux EJB...
A moins que t'ai un exemple/tuto simple et parlant pour les EJB pour débutants.

Et a choisir entre JOnas et Tomcat. Quelles sont les différences majeures ?

Merci encore.
0
maily Messages postés 7556 Date d'inscription lundi 26 juin 2000 Statut Contributeur Dernière intervention 23 juin 2023 453 > n@n¤u Messages postés 195 Date d'inscription mardi 30 septembre 2003 Statut Membre Dernière intervention 24 octobre 2008
11 avril 2006 à 11:29
Là, je peux pas te dire, je ne connais pas Jonas.
Je n'ai travaillé qu'avec Tomcat.

0
Le Serveur d'application Tomcat ne possede pas de conteneur EJB , tu ne peux donc pas faire de composant EJB avec tomcat, pour cela il te faut utiliser Jonas.

JDBC et EJB ne sont pas comparable puisqu'il n'ont pas la meme utilité.

;)
1
Bonjour,
Je viens de lire toutes vos réponses avec passion, voilà ce que j'en pense :
Je trouve que Maily a su bien répondre pour ce qui est du choix entre EJB et JDBC.
Samy et ptitjuju69 ont aussi raison. Mais en lisant bien la question de n@n¤u, on sent bien que c'est quelqu'un qui veut programmer une application simple et qui est plus ou moins débutant. C'est comme un débutant qui veut programmer un petit site web, que doit-il choisir entre le html et Perl/CGI. Tout dépend de la complexité de l'application certes, mais faut pas non plus utiliser une bombe nucléaire pour tuer une mouche. Moi je conseillerais à n@n¤u de partir sur l'utilisation du JDBC (JDBC pour un débutant peut être vu comme un API pour accéder aux données dans une BD sans entre dans le jargon drivers machin bidule :)). Effectivement pour un expert c'est mille fois plus simple de programmer une application complexe avec EJB comparé à l'utilisation du JDBC et autres combines. Cela suppose que tout le concept et la théorie qui tournent autour de l'EJB sont déjà bien compris. Mais pour un débutant qui ne connait pas encore ces notions c'est 1000 0000 de fois plus complexe de comprendre comment tous les composants s'imbriquent entre eux, la compréhension des annotations, etc. (à votre avis pourquoi le tutorial EJB de Sun dépasse 1124 pages pour seulement deux exemples ? (https://www.oracle.com/sun/ En plus avant de se lancer dans les EJBs, il faut au moins pouvoir comprendre le JDBC comme plein d'autres composants basiques du Java.
Passez une bonne soirée
Issiaka
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
maxcavaleraMaroc
4 sept. 2007 à 02:37
je pense qu'il vaut mieux utiliser Tomcat+apache Geronimo parcke a mon avis ce l'outil la plus puissante est la plus simple en plus c gratos,"inclu le conteneur d'ejb,services messagrie et ........le tt"!!
est ce srai tres demander dans le futur ;-),
et meme les ejb il deviennent facil avec la derniere version d'Ejb 3,e a mon avi il faut s'abituer a travailer correctement meme dans des applications perso ou petites a+
0
himoura_kenshin
28 sept. 2007 à 22:40
slt il y'a quelque chose que je n'arrive pas a comprendre
quand on dit tomcat est ce que c'est pas la meme chose que apache ??
et pour ce qui est de la programmation est ce qu'on programme avec ce tomcat ou bien c avec un framework (jbuilder, eclips ...) et puis tomcat sert juste com serveur d'application???
une dernière question pour ce qui est de la programmation des interfaces clients comment les connecter avec les applications métiers

merci d'avance
0
Jonas --> programmation par composants : c'est à dire permet d'utiliser plusieur fois des bout de programmes dejà développé pour plusieur application différrents

TomCat --> Serveur Java comme apache l'est pour PHP : TomCat te permet en gros de faire un site web mais en Java

Après si tu veux juste relier java à une base de donnée tu appelles juste le driver JDBC de connection. Et tu utilise un serveur sql comme mysql ou oracle...
0
Bonjour,

Plutot que difference entre tomcat et jonas, il aurait mieux fallut demander la différence entre JBoss et JONAS qui sont tous les deux des serveurs d'applications.
Pour l'accès à la BD par JDBC, Hibernate peut être un juste millieu entre JDBC et les EJB.
0
samy_neo Messages postés 2 Date d'inscription samedi 24 novembre 2007 Statut Membre Dernière intervention 21 novembre 2008
24 nov. 2007 à 11:08
Bonjour tous le monde, pour repondre à la question je peux dire que Tomacat est un conteneur de sevlet, en outre il te permet de generer tes pages dynamiques ecrites en JSP, par contre Jonas est un serveur d'application, il n' a pas un conteneur de servlet en revanche il contient un conteneur d'EJB, BEAN ......, donc pour une appli WEB simple un TOMCAT suffit largement, maintenant si dans ton appli ta besoin de bean session et ke s'est je ??? t obliger d'utiliser Jonas, la derniere version de Jonas contient le serveur Tomcat tu as besoin de rien faire voila j'espere ca repon a ta question

bon courage
Samy
0
je suis spécialisé dans les architectures J2EE et ce que je lis me fais bien rire...
seule la réponse de samy_neo est digne d'un développeur J2EE...

Jonas, JBoss, Tomcat sont tous des serveurs d'application implémentant plus ou moins la norme J2EE.
Tomcat étant une implémentation des technologies servlet/JSP comme le disait justement samy_neo.

bref, si vous répondez, soyez précis et rigoureux dans vos posts pour ne pas noyer les newbies dans des explications inexactes et confuses...

j'en ai encore les poils qui s'hérissent dans le dos... on voit tellement de pseudo-experts J2EE.......

avant de raconter des inepties, allez sur le site de Sun, il y a de très bons tutoriels J2EE. ça vous évitera de dire des bétises.

le lien pour le tuto. J2EE 1.4:
https://docs.oracle.com/javaee/1.4/tutorial/doc/

cordialement.
0
Merci pour le complement, je te retourne aussi le complement, il est vrai qu'on lit n'importe koi, j'ai bein aimé la transition faite entre EJB JDBC la question partait sur une difference entre TOMCAT et JONAS on se retrouve avec EJB JDBC mais bon ça fait un peu de lecture lol,

Ce qui est bien est vraiment d'orienté les lecteurs vers une documentation riche comme tu as fait

Bonne journée

Samy
0
Oula la la ! lol !

C'est clair qu'on n'y lit n'importe quoi ! Les EJB ? c'est plutot facile à implémenter c'est même le but, si l'on en croit les concepteurs EasyBeans ...

Comparer JDBC avec EJB ? mddrrrrr, jdbc pour moi c'est comme un driver qui permet d'utiliser une base de donnée à l'interieur d'une application ...

Alors qu'EJB, c'est comme les POJOs ou les Bundles OSGI, c'est une méthode de programmation tout simplement
avec annotation de la norme J2EE, qui permettent de manipuler uen bd depuis du code java etc ...

C'est comme si je comparais une femme à un mec ? lol

Bref par contre la question JONAS ou TOMCAT semble légitime, car on compare des serveurs d'applications ...
C'est un peu la question que je me posais car j'aime pas trop JOnas ...

Donc TOMCAT fait bien contenuer EJB ? ou alors j'ai lu tomcat Geronimo ? qui a lair d'etre un plugin pour J2EE sous tomcat, sinon ouais ya JBOss et pkoi pas Glassfish ?

Le dernier eclipse Ganymede, inclue d'ailleurs un serveur J2EE, je me demande lequel d'ailleurs !

Cordialement.
Bisous à toutes :) !
0