Introduction
Comme nous l'avons vu en fin d'un précédent
article sur les servlets, ceux-çi sont principalement
utiles lorsqu'il s'agit d'accéder à une base de données
au travers de JDBC. Nous allons donc poursuivre les articles "Débuter
avec le servlets Java" et "Introduction
à JDBC" en écrivant un premier servlet simple
faisant appel à JDBC.
Vous devez avant
tout disposer des outils nécessaires, à savoir: le
SDK
Java2, qui contient l'extension Java Servlet permettant à
votre serveur de se servir des servlets, et un serveur, évidemment,
comme Tomcat
du projet
Apache.
Le servlet
Le servlet JDBC que nous allons vous présenter va lancer
un appel sur une base de données et renvoyer les données
au format HTML. Un servlet se construit à partir d'une classe
Servlet de base et en lui définissant
des méthodes Java pour gérer les requêtes en
entrée du client.
(fichier servlet.java)
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DBServlet extends HttpServlet
{
private Connection con;
private PrintWriter out;
public void init(ServletConfig conf) throws ServletException
{
super.init(conf);
try
{
Class.forName("omnidex.jdbc.OdxJDBCDriver");
con =DriverManager.getConnection
("jdbc:omnidex:c:/datas/test.dsn", "login", "mdpasse");
}
catch(Exception e)
{
System.err.println(e);
}
}
public void service(HttpServletRequest req, HttpServletResponse
res) throws ServletException, IOException
{
res.setContentType("text/html");
try
{
out = res.getWriter();
out.println("<html><head><title>");
out.println("JDBC Servlet");
out.println("</title></head><body>");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT
nom FROM clients WHERE id > 20");
out.println("<UL>");
while(rs.next())
{
out.println("<LI>"
+ rs.getString("nom"));
}
out.println("</UL>");
rs.close();
stmt.close();
}
catch(SQLException e)
{
out.println("Exception SQL");
}
catch(IOException e)
{
system.err.println("Exception
I/O");
}
out.println("</body></html>");
out.close();
}
public void destroy()
{
try
{
con.close();
}
catch(SQLException e)
{
;
}
}
}
Nous décrivons
le servlet page suivante...
Page 1 | 2
|