Connessione Servlet -DB access tramite bridge ODBC

  • Creatore Discussione Creatore Discussione servlet
  • Data di inizio Data di inizio

servlet

Nuovo Utente
24 Mag 2005
1
0
0
Salve, HO un problmema: Devo connnettere un DB in access (zoo.mdb) ad una servlet ma ho problemi con il driver e la connection.
Eccovi il codice:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import java.lang.*;
import java.*;
import javax.*;
import java.sql.*;



public class serv3 extends HttpServlet {

private String a, b, c, d, e , f, g, h, i, l, m, str;

Connection con = null;
//Init metodo di httpGenericServlet
public void init () {
//super.init(config);
//super();
}

//Metodo DoGet
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
//Prelevare gli ID e password dalle Form
int Npassword,queri;
boolean accesso, accessi;


String userID = request.getParameter ("userID");
String password = request.getParameter ("password");
String query = request.getParameter ("Query");
String aggiorna = request.getParameter ("aggiorna");
// jdbc jdb = new jdbc(userID, password, accesso); //richiamo Jdbc
queri = Integer.parseInt (query);
String userid = userID;
//NuserID = Integer.parseInt(userID);
Npassword = Integer.parseInt (password);
//forma di protezione, se sono l'utente di root accedo in R-W altrimenti solo in lettura.
if (userID=="Deficiente" || password=="00" ){
System.out.println ("Sei lo utente di root; puoi accedere in R - W");
accesso = true;
}
else {
System.out.println("Utente normale,accesso solo in R!");
accesso = false;
}
//uso i cookie
Cookie cooki = new Cookie("ID","nome");
cooki.setMaxAge(3600); //Setto la vita max del cookie
response.addCookie(cooki);
cooki = new Cookie ("cont","1");
cooki.setMaxAge (-1); //Lo perdo se chiudo il BR

try{ // caricamento e registrazione

//creazione della connessione con la Base Dati

// URL jdbc:zoo:database_alias --- nome file driver : Atinav-JTA2N11R ---
//String url= "jdbc:odbc:DBMS.zoo:8080";
Class.forName("sun.jdbc.odbc.JdbcObdcDriver");
//sun.jdbc.odbc.JdbcOdbcDriver
//sun.jdbc.odbc.JdbcObdcDriver
String url= "jdbc:odbc:ZOO";

int rowsUpdated;
// connessione con id/password forniti dall’utente
// String driver = config.getServletContext().getInitParameter("DB_DRIVER");
con = DriverManager.getConnection(url, userid, password);

if (!accesso) { //se accessi è falso ovvero sono utente normale
// interrogazione animali
System.out.println("Statement");
if (queri == 1){
Statement stmt= con.createStatement();
// esegue la query
ResultSet rs= stmt.executeQuery ("SELECT* FROM ZOO.GENERE");
System.out.println("Risultati:");
// mostra i risultati
while(rs.next()) { //cicla nelle righe del DB
a = rs.getString(1);
str= rs.getString(2);
b = rs.getString(3);
c = rs.getString(4);
System.out.print(" codice esemplare = " + a);
System.out.print(" nome = " + str);
System.out.print(" nome specie = " + b );
System.out.print(" nome famiglia = " + c );
System.out.print("\n");
}
rs.close();
}

if (queri == 2){
Statement stmt= con.createStatement();
// esegue la query
ResultSet rs= stmt.executeQuery ("SELECT* FROM ZOO.ADDETTI");
System.out.println("Risultati:");
// mostra i risultati
while(rs.next()) { //cicla nelle righe del DB
d = rs.getString(1);
e = rs.getString(2);
f = rs.getString(3);
g = rs.getString(4);
System.out.print(" Luogo di nascita = " + d);
System.out.print(" via = " + e);
System.out.print(" numero civico = " + f );
System.out.print(" citta' = " + g );
System.out.print("\n");
}
rs.close();
}

if (queri == 3){
Statement stmt= con.createStatement();
// esegue la query
ResultSet rs= stmt.executeQuery ("SELECT* FROM ZOO.VISITA");
System.out.println("Risultati:");
// mostra i risultati
while(rs.next()) { //cicla nelle righe del DB
h = rs.getString(1);
i = rs.getString(2);
l = rs.getString(3);
m = rs.getString(4);
System.out.print(" Veterinario = " + h );
System.out.print(" Data Visita = " + i );
System.out.print(" Peso = " + l );
System.out.print(" Dieta = " + m );
System.out.print("\n");
}
rs.close();
}
}

if (accessi = true) { //ovvero sono il super Utente Deficiente
// apre Statement
Statement stmt = con.createStatement();


// Esecuzione di altre istruzioni SQL
// aggiorna il database… prova ad aggiornarlo!
System.out.println("\n\n Update del database... ");
stmt = con.createStatement();
// Aggiornamento.
rowsUpdated = stmt.executeUpdate("" + aggiorna);
/* Conto il numero di "rows" aggiornate*/
System.out.print("cambiato" + rowsUpdated);
if(1 == rowsUpdated)
System.out.println(" row");
else /* conto numero righe : se diverso dunque maggiore di 1 aggiornato più di una riga */
System.out.println(" rows");
}

con.close(); // chiude Connection

} // try
catch( Exception es ) {
es.printStackTrace();
System.exit(0);
}//catch

response.setContentType("text/html");

PrintWriter out = response.getWriter();
int nRows =0;
int nCols = 0;

System.out.println("<html>");
System.out.println("<head>");
System.out.println("<title> Answer " + "</title>");
System.out.println("</head>");

System.out.println("<body>");
System.out.println ("<p> ");
System.out.println ("La queri richiesta è la numero : " +queri + ".");
if (queri == 1){
System.out.print(" codice esemplare = " + a + ";");
System.out.print(" nome = " + str + ";");
System.out.print(" nome specie = " + b + ";" );
System.out.print(" nome famiglia = " + c + "." );
System.out.print("\n");
System.out.println ("</p> ");
}
if (queri == 2){ // addetto
System.out.print(" Luogo di nascita = " + d + ";");
System.out.print(" via = " + e + ";" );
System.out.print(" numero civico = " + f + ";" );
System.out.print(" citta' = " + g + ";" );
System.out.print("\n");
System.out.println ("</p> ");
}
if (queri == 3){
System.out.print(" Veterinario = " + h + ";" );
System.out.print(" Data Visita = " + i + ";");
System.out.print(" Peso = " + l + ";");
System.out.print(" Dieta = " + m + ";");
System.out.println (" </p> ");

}
System.out.println (" <a href='Form.html' >");
/* System.out.println (" ");
System.out.println (" ");
System.out.println (" ");
System.out.println (" ");
*/



System.out.println("</body>");
System.out.println("</html>");
}
//metodo DoPost --- Lo uso per implementare una forma di sicurezza
protected void doPost (HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException{
System.out.println ("Non dovresti essere qui ergo sei un malvivente");
System.out.println ("Deficiente non ti autorizza ad entrare");
System.exit(0);
}
public void Destroy (){
con = null;
}
}
 

Discussioni simili