Un code plus compact, utilisation d'interfaces (surement) - Java - Programmation
Marsh Posté le 03-07-2002 à 11:28:58
Ouuu que c'est moche ici...
Déja, mon code est pas super beau avec mon éditeur, ma alors, posté ici, c une catastrophe.
Enfin, si vous arrivez qd même à lire, et que ce code vous énerve pas trop, j'attend vos suggestions...
Marsh Posté le 03-07-2002 à 11:34:40
bah y'a pas gd chose qui se repeterais, si ce n'est la repetition de le declaration du ResultSet, Connection etc, les catch, le finally. mais ça tu y couperas pas de toutes façons.
tu pourrais betement foutre ton code d'execution de requete dans une methode.
Marsh Posté le 03-07-2002 à 11:49:29
--greg-- a écrit a écrit : bah y'a pas gd chose qui se repeterais, si ce n'est la repetition de le declaration du ResultSet, Connection etc, les catch, le finally. mais ça tu y couperas pas de toutes façons. tu pourrais betement foutre ton code d'execution de requete dans une methode. |
...Qui rendrait un ResultSet ?
Mais, de toute façon, je pourrais pas inclure le try - catch - finally dedant. ça va pas réduire grand chose en fait.
J'viens d'avoir une idée qui me parait bien :
Chacun de mes beans va implémenter une interface JLdsBean, qui imposera la méthode
Code :
|
A ce moment là, je pourrait faire, dans JSQLRequest, une méthode
Code :
|
qui ressemblerai à celle que g poste avant, mais ou la 2e partie en gras serait remplacée par un appel à la méthode setFromResultSet.
c pas mal, non !?
Marsh Posté le 03-07-2002 à 11:53:29
un bean qui prend un resultset beurk.
Par contre un bean qui a des méthodes load, save, update ca c'est cool. Et tu peux faire appel à une classe d'utilistaires SQL pour la connection et les autre brols.
Marsh Posté le 03-07-2002 à 11:57:02
DarkLord a écrit a écrit : un bean qui prend un resultset beurk. Par contre un bean qui a des méthodes load, save, update ca c'est cool. Et tu peux faire appel à une classe d'utilistaires SQL pour la connection et les autre brols. |
Et !? tu mettrais quoi comme paramètre de load ? c cette méthode qui serait chargée des accès BD !? j'croyais qu'y fallait pas faire ça non plus ds un bean.
Tu peut détailler un peu tt ça ?
Et une classe d'utilitaires SQL, genre !? j'vois pas bien ce qu'elle pourrait m'apporter comme utilitaire...
Marsh Posté le 03-07-2002 à 12:08:16
bin normallement un bean contient toute les infos sur ce que tu veux décrire (un client, un colis, une société). Certains mettent également les méthodes d'accès au bean lui permettant de s'updater, se loader tout seul dans la bd.
Comme tout bean a un constructeur vide tu peux faire
Code :
|
Et pour la classe d'utilitaires c'est par exemple une classe qui te donnerait une instance de Connection sur laquelle tu pourrais déclarer ton statemment etc ...
Ainsi tu centralies l'information propre au bean dans le bean. Ceci n'est pas vraiment valalbe si tu veux commencer à sérialiser tes beans (auquel cas le bean doit rester purement un objet contennat des données). Dans ce cas tu dois faire appel à une classe de type helper (ClientBeanHelper) qui fera le job pour toi.
Marsh Posté le 03-07-2002 à 12:24:37
DarkLord a écrit a écrit : bin normallement un bean contient toute les infos sur ce que tu veux décrire (un client, un colis, une société). Certains mettent également les méthodes d'accès au bean lui permettant de s'updater, se loader tout seul dans la bd. Comme tout bean a un constructeur vide tu peux faire
|
haaa... là t chiant ! Au début, j'avais fait un truc comme ça (méthode load) et tu m'as dit que, non, c'est mauvais, et que je devais pas faire ça. Du coup, j't'ai écouté, g recommencé en sortant les accès BD du bean. Et maintenant tu me dis que c pas bien grave !?
Marsh Posté le 03-07-2002 à 12:29:33
j'ai dis ca dépend ce que tu veux faire. si tu as présenté ton projet comme utilisant la serialization ou autre, c'est normal que je te l'ai déconseillé. Je connais pas ton projet moi.
Et puis si je suis chiant, je ne te réponds plus comme ca le problème est résolu
Marsh Posté le 03-07-2002 à 13:58:40
DarkLord a écrit a écrit : j'ai dis ca dépend ce que tu veux faire. si tu as présenté ton projet comme utilisant la serialization ou autre, c'est normal que je te l'ai déconseillé. Je connais pas ton projet moi. Et puis si je suis chiant, je ne te réponds plus comme ca le problème est résolu |
Nooooon, 'faut pas te vexer Darky... mais sur ce coup là, j'étais pas content, comprend moi.
Mais 'faut pas que tu m'laisses, j'ai besoin de toi moi.
Marsh Posté le 03-07-2002 à 11:26:50
Bon, allez, j'vais essayer d'expliquer mon pb.
J'ai une quizaine de tables SQL.
Dans chacune, je vais récupérer un ou une collection de bean que g créé, qui correspondent à peu près aux colones de chaque tables.
J'ai une classe JSQLRequest qui est chargée de faire toutes les requêtes.
Cette classe à toute sorte de méthode de ce genre:
Où seule les passages en gras diffèrent. vous voyez pas un moyen de ne pas réécrire tout ça pour chaque récupération de beans à partir de ma BD ?
Message édité par El_gringo le 03-07-2002 à 11:27:40