home *** CD-ROM | disk | FTP | other *** search
/ ftp.disi.unige.it / 2015-02-11.ftp.disi.unige.it.tar / ftp.disi.unige.it / pub / .person / CataniaB / teach-act / DB3 / servlet-bean-DBMS / QueryDBMS.java < prev    next >
Text File  |  2001-03-29  |  3KB  |  91 lines

  1. import java.io.*;
  2. import java.util.*;
  3. import java.text.*; // per il DateFormat
  4. import java.sql.*;
  5. import javax.servlet.*;
  6. import javax.servlet.http.*;
  7.  
  8. /**
  9.  * Semplice query con modulo DBMS e utilizzo dei bean
  10.  *
  11.  * @author Mirko Manea
  12.  */
  13.  
  14.  
  15. /**
  16.  * Osservazione
  17.  *
  18.  * @author Barbara Catania
  19.  * 
  20.  * Si noti che non sono previsti i metodi init() e destroy(),
  21.  * Tutto viene realizzato dal metodo doGet():
  22.  * - connessione
  23.  * - elaborazione
  24.  * - chiusura connessione
  25.  * Questo puo' essere considerato ragionevole poiche' non vengono richiesti parametri in input,
  26.  * quindi si effettua una sola connessione ed una sola query
  27.  * PER ESERCIZIO:
  28.  * provare a modificare la servlet in modo che prenda la matricola da input (tramite FORM), prevedere
  29.  * in questo caso i metodi init(), destroy(), doGet() o doPost() come visto a lezione
  30.  */
  31.  
  32.  
  33.  
  34. public class QueryDBMS extends HttpServlet {
  35.  
  36.     public void doGet(HttpServletRequest request,
  37.                       HttpServletResponse response)
  38.         throws IOException, ServletException {
  39.  
  40.         PrintWriter out = response.getWriter();
  41.     String sql;
  42.  
  43.     // formattatore per le date
  44.     DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, Locale.ITALY);
  45.  
  46.     out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"");
  47.     out.println("          \"http://www.w3.org/TR/REC-html40/loose.dtd\">");
  48.  
  49.  
  50.         out.println("<html>");
  51.  
  52.         out.println("<head>");
  53.         out.println("<title>Studenti</title>");
  54.         out.println("</head>");
  55.  
  56.         out.println("<body>");
  57.         out.println("<h1>Studenti</h1>");
  58.  
  59.     String matricola = "in000003";
  60.  
  61.     try {
  62.         DBMS dbms = new DBMS();
  63.         StudenteBean studente = new StudenteBean();
  64.  
  65.         studente = dbms.extractStudente(matricola);
  66.         out.println("<p>");
  67.         out.println("<strong>Cognome:</strong> "+studente.getCognome());
  68.         out.println("<br>");
  69.         out.println("<strong>Nome:</strong> "+studente.getNome());
  70.         out.println("<br>");
  71.         out.println("<strong>Facoltà:</strong> "+studente.getFacolta());
  72.         out.println("<br>");
  73.         out.println("<strong>Data di nascita:</strong> "+df.format(studente.getDataNascita()));
  74.         out.println("<br>");
  75.         if (studente.getCreditiOttenuti() == -1) {
  76.             out.println("<strong>Crediti ottenuti:</strong> "+studente.getCreditiOttenuti());
  77.         }
  78.         out.println("</p>");
  79.         out.println("<hr>");
  80.     } catch (UnknownKeyDBMSException ukde) {
  81.         System.err.println("Matricola "+matricola+" non trovata: "+ukde.getMessage());
  82.     } catch (DBMSException dbmse) {
  83.         System.err.println("Errore verso il database: "+dbmse.getMessage());
  84.     }
  85.  
  86.         out.println("</body>");
  87.         out.println("</html>");
  88.  
  89.     }
  90. }
  91.