TD J2EE
Cours

Accès base de données

Le but de cet exercice est d'interfacer une base de données Postgresql de façon à publier une partie des données qu'elle contient. En l'occurrence, il s'agira ici de créer une page Web de lancement de requêtes pour interroger notre base de données.

1. Créez une page web du nom fromleft.hml avec un formulaire pour récupérer les requêtes SQL :

<html>

<head>

<title>Lancer requete database</title>

</head>

<body>

<P>

<form action="http://tuxa.sme.utc:8080/sr03xy/servlet/LanceRequete"target="right">

<input type=text size=30 name=requete>

<br>

<input type=submit>

</form>

2. Créez une page web du nom lancerequete.hml qui encadrera la page fromleft.html et la classe jsp lancerequete dans un frameset.

<html>

<head>

<title>frame de lance requete</title>

</head>

<frameset cols="30%,*">

<frame src = "FormLeft.html" name = "left">

<frame src = "http://tuxa.sme.utc:8080/sr03xy/sr03/LanceRequete"name = "right">

</frameset>

</html>

3. Créez une classe jsp qui interroge la base de donnée dblo17 sur le server tuxa

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

import java.sql.*;

import java.io.*;

public class LanceRequete extends HttpServlet {

 String username;//nom d'utilisateur de bd

 String password;

 String url;

 String requete ="";

 String nom;

 int nbre;

 public void doGet(HttpServletRequest request, HttpServletResponse response)

 throws IOException, ServletException

 {

  response.setContentType("text/html");

  PrintWriter out = response.getWriter();

  out.println("<html>");

  out.println("<head>");

  out.println("<title>Lance requete!</title>");

  out.println("</head>");

  out.println("<body>");

  // ---- configure START

  username = "lo17xxx";

  password = "dblo17";

  // The URL that will connect to TECFA's MySQL server

  // Syntax: jdbc:TYPE:machine:port/DB_NAME

  url = "jdbc:postgresql://tuxa.sme.utc/dblo17";

  // ---- configure END

  String requete;

  requete = request.getParameter("requete");

  if (requete != null) {

   // INSTALL/load the Driver (Vendor specific Code)

   try {

    Class.forName("org.postgresql.Driver");//le pilote de connexion entre jsp et postgresql

    } catch(java.lang.ClassNotFoundException e) {

    System.err.print("ClassNotFoundException: ");

    System.err.println(e.getMessage());

    }

   try {

    Connection con;

    Statement stmt;

    // Establish Connection to the database at URL

    // with usename and password

    ...(à remplir) //initialisation de l'instance de connexion

    ...(à remplir) //création d'une requête

    // Send the query and bind to the result set

    ...(à remplir) //le resultat de la requête en form de table

    ...(à remplir) //récuparation des noms d'attribut du resultat rs

    ...(à remplir, indice un boucle) //l'affichage du resultat de la requête

    out.println("</body>");

    out.println("</html>");

    // Close resources

    stmt.close();

    con.close();

    }

    // print out decent erreur messages

    catch(SQLException ex) {

     System.err.println("==> SQLException: ");

     while (ex != null) {

     System.out.println("Message: " + ex.getMessage ());

     System.out.println("SQLState: " + ex.getSQLState ());

     System.out.println("ErrorCode: " + ex.getErrorCode ());

     ex = ex.getNextException();

     System.out.println("");

    }

   }

  }

 }

}

Java beans (page suivante)Création de damier (page Précédente)
AccueilImprimerRéalisé avec SCENARI