Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
5292 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

[Java - servlet] Logique de fonctionnement

n°152215
greg@frees​tarthu
Posté le 05-06-2002 à 23:54:45  profilanswer
 

Reprise du message précédent :

benou a écrit a écrit :

:D
y a qu'à découpé en plein de ligne ... le principe est là ...  




euh en une ligne ou 10, c'est moche et B A D !!


---------------
\^o^/ Libérez HotShot \^o^/
mood
Publicité
Posté le 05-06-2002 à 23:54:45  profilanswer
 

n°152220
benou
Posté le 05-06-2002 à 23:58:24  profilanswer
 

bha nan pkoi ?

n°152225
greg@frees​tarthu
Posté le 06-06-2002 à 00:01:04  profilanswer
 

benou a écrit a écrit :

bha nan pkoi ?  




introspection et tout ça...
si y'a moyen de faire autrement (et y'a moyen de faire autrement, surtout qu'il a pas 400 "actions", et qu'elles sont clairement definies) eh ben y faut faire autrement
en plus ça l'obligerait a faire des trucs du genre action=doThisOrThat , ce que je trouve "moche" dans une url
ou bien d'appeler ses methodes "dothisorthat", ce qui est encore pire
mais bon pas envie de polémiquer


---------------
\^o^/ Libérez HotShot \^o^/
n°152231
benou
Posté le 06-06-2002 à 00:10:13  profilanswer
 

benou a écrit a écrit :

 
this.getClass().getMethod(request.getParameter("method" ), new String[] {String.class, ..., String.Class}).invoke(null, new Object[] {request.getParameter("param1" ), ..., request.getParameter("paramN" )});




écrit en plus joli :  
 

Code :
  1. public Class[] getClassTab(int size) {
  2.    Class[] classTab = new Class[size];
  3.    for (int i=0; i < size; i++)
  4.       classTab = String.Class;
  5.    return classTab;
  6. }
  7. ...
  8. [i]dans la méthode service
  9. ...
  10. String methodToCall = request.getParameter("method" );
  11. String[] parameters = request.getParameterValues("param" );
  12. Object[] objectParameters = new Object[parameters.length];
  13. System.arrayCopy(parameters, 0, objectParameters, 0, parameters.length);
  14. Class[] paramTypes = getClassTab(parameters.length);
  15. Method methodInstance = this.getClass().getMethod(methodToCall, paramTypes);
  16. methodInstance.invoke(null, objectParameters);


 
ensuite il appelle sa servlet comme ca :  
http://truc/machin/servlet/SaServl [...] =1&param=2


Message édité par benou le 06-06-2002 à 00:12:28
n°152232
benou
Posté le 06-06-2002 à 00:13:43  profilanswer
 

greg@freestarthu a écrit a écrit :

 
introspection et tout ça...
si y'a moyen de faire autrement (et y'a moyen de faire autrement [...] eh ben y faut faire autrement
mais bon pas envie de polémiquer  




:??: je vois vriment pas pourquoi ...

n°153290
El_gringo
Posté le 07-06-2002 à 09:17:37  profilanswer
 

greg@freestarthu a écrit a écrit :

 
et qu'est-ce que tu esperes avoir comme entier a partir de "pouet" ou de "blabla" ... ???
 
passe des entiers, ou fait des if else, et paf  




 
en C, un caractère c'est en fait un entier. Du coup, c pas choquand (toujours en C) d'assimiler un nombre à une suite de caractères.

n°153292
El_gringo
Posté le 07-06-2002 à 09:18:54  profilanswer
 

benou a écrit a écrit :

 
écrit en plus joli :  
 

Code :
  1. public Class[] getClassTab(int size) {
  2.    Class[] classTab = new Class[size];
  3.    for (int i=0; i < size; i++)
  4.       classTab = String.Class;
  5.    return classTab;
  6. }
  7. ...
  8. [i]dans la méthode service
  9. ...
  10. String methodToCall = request.getParameter("method" );
  11. String[] parameters = request.getParameterValues("param" );
  12. Object[] objectParameters = new Object[parameters.length];
  13. System.arrayCopy(parameters, 0, objectParameters, 0, parameters.length);
  14. Class[] paramTypes = getClassTab(parameters.length);
  15. Method methodInstance = this.getClass().getMethod(methodToCall, paramTypes);
  16. methodInstance.invoke(null, objectParameters);


 
ensuite il appelle sa servlet comme ca :  
http://truc/machin/servlet/SaServl [...] =1&param=2  




 
ça m'plais assez comme méthode.
Et si on met dans la ligne de commande des paramètres que la fonction invoquée n'attend pas, ou s'il en manque ? Exception ?

n°153300
benou
Posté le 07-06-2002 à 09:43:41  profilanswer
 

el_gringo a écrit a écrit :

 
 
ça m'plais assez comme méthode.
Et si on met dans la ligne de commande des paramètres que la fonction invoquée n'attend pas, ou s'il en manque ? Exception ?  




 
bha oui : au moment du getMethod, il ne trouvera pas la fonction en question ...
 
Tu remarqueras aussi que toutes tes fonctions doivent avoir des paramètres de type String : c'est à elle de les retransformer (en int, ou autre) si elles en ont besoin.

n°153308
El_gringo
Posté le 07-06-2002 à 10:10:23  profilanswer
 

benou a écrit a écrit :

 
 
bha oui : au moment du getMethod, il ne trouvera pas la fonction en question ...
 
Tu remarqueras aussi que toutes tes fonctions doivent avoir des paramètres de type String : c'est à elle de les retransformer (en int, ou autre) si elles en ont besoin.  




 
ha...
ouais, normal en fait !
Ms bon, du coup, j'trouve que ça complique pas mal, pour pas grand chose finalement. Je vais faire des if else, ça sera + simple.
Merci qd même (et je retient, ça peut servir)

n°153439
benou
Posté le 07-06-2002 à 11:25:38  profilanswer
 

el_gringo a écrit a écrit :

 
 
ha...
ouais, normal en fait !
Ms bon, du coup, j'trouve que ça complique pas mal, pour pas grand chose finalement. Je vais faire des if else, ça sera + simple.
Merci qd même (et je retient, ça peut servir)  




ce sera pas plus simple : tu devras faire exactement la même chose (transformer les String dans le type voul), mais tu le feras à l'intérieur de tes if plutot qu'à l'intérieur des méthodes.
 
Bref, t'auras les même bout de code, mais avec plein de if.
 
mais bon, tu fais comme tu veux ...

mood
Publicité
Posté le 07-06-2002 à 11:25:38  profilanswer
 

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
[java/JSP] paramètres d'initialisation d'un JSP dans le web.xml[ java ] JTabbedPane à rafraîchir.
[Java] Lire un fichier de properties depuis une servlet[JAVA] Navigation dans un JEditorPane ????
[JAVA] probleme graphique avec mes JTree !!!![ java ] licence d'utilisation d'un jar commercial
[Java] Fichier WarProblème de survole avec la souris et deux java Script
[java]générateur d etat... 
Plus de sujets relatifs à : [Java - servlet] Logique de fonctionnement


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)