Une instruction préparée JSP est un objet de serveur réutilisable qui contient une instruction SQL. Vous pouvez y insérer n'importe quelle instruction SQL valide. Par exemple, une instruction préparée peut contenir une instruction SQL qui renvoie un jeu d'enregistrements ou qui insère, met à jour ou supprime des enregistrements dans une base de données.
Une instruction préparée est dite réutilisable car le serveur d'application peut interroger la base de données plusieurs fois à l'aide d'une seule instance de l'objet d'instruction préparée. Contrairement à l'objet d'instruction JSP, une nouvelle instance de l'objet d'instruction préparée n'est pas créée pour chaque nouvelle requête de base de données. Si vous savez que l'instruction sera exécutée un grand nombre de fois, il est conseillé d'utiliser une seule instance de l'objet pour améliorer l'efficacité des opérations effectuées dans la base de données et réduire la mémoire occupée sur le serveur.
Sur une page JSP, les objets d'instruction préparée sont créés par l'intermédiaire d'un scriptlet Java. Cependant, Dreamweaver vous permet de créer des instructions préparées sans avoir à écrire une seule ligne de code Java.
Si vous souhaitez néanmoins connaître le code nécessaire, étudiez le scriptlet suivant, qui permet de créer une instruction préparée :
String myquery = "SELECT * FROM EMPLOYEES WHERE DEPARTMENT = ?"; PreparedStatement mystatement = connection.prepareStatement(myquery);
La première ligne stocke l'instruction SQL dans une variable de chaîne appelée myquery ; le point d'interrogation sert d'espace réservé à la valeur de la variable SQL. La deuxième ligne crée un objet d'instruction préparée appelé mystatement.
Vous devez ensuite attribuer une valeur à la variable SQL, comme suit :
mystatement.setString(1, request.getParameter("myURLparam"));
La méthode setString attribue la valeur à la variable et accepte deux arguments. Le premier argument spécifie la variable attribuée en fonction de sa position (dans ce cas, la première position dans l'instruction SQL). Le deuxième argument spécifie la valeur de la variable. Dans cet exemple, la valeur est fournie par un paramètre URL transmis à la page.
|
REMARQUE |
|
Les méthodes à utiliser pour attribuer des valeurs aux variables SQL diffèrent en fonction du type de valeur non-chaîne. Par exemple, pour attribuer un entier à une variable, vous devez utiliser la méthode |
Pour terminer, vous devez générer un jeu d'enregistrements, comme suit :
ResultSet myresults = mystatement.execute();
Pour plus d'informations sur la création d'instructions préparées JSP à l'aide des outils de développement rapide d'applications (RAD) dans Dreamweaver, voir Modification d'une base de données à l'aide d'instructions préparées JSP.