|
Segue una breve JSP che eseguirà, dopo aver impostato i valori corretti alle variabili iniziali, una query al server MySQL, restituendo in una pagina web i corrispondenti risultati.
E' necessario dapprima creare una tabella, che dovrà contenere alcuni records.
Si notino le parti in grassetto, relative alla stringa di connessione e all'esecuzione della query SQL. Il driver JDBC utilizzato per la connessione potrebbe essere differente da quello presente sul server, pertanto il codice potrebbe differire nei punti evidenziati in grassetto.
E sufficiente copiare ed incollare il codice e sostituire le "X" con i corretti dati di accesso al MySQL server.
Il codice per i servlet è sostanzialmente identico, nelle sezioni di connessione e parametri, ma richiede la definizione di un metodo doGet o doPost e l'inclusione delle opportune librerie per la compilazione.
<%@page contentType="text/html" import="java.io.*, java.sql.*"%>
<html>
<head><title>JSP to MySQL</title></head>
<body>
<%!
// Dichiarazioni iniziali, impostare le variabili
public String fonte, query, User, Password; Connection con; Statement stmt; ResultSet rs; ResultSetMetaData rsmd; String url;
public final String DatabaseUser = "XXXXXXXXXXX";
public final String DatabasePassword = "XXXXXXXXXXX";
public final String NomeDatabase = "XXXXXXXXXXXXX";
public final String NomeTabella = "XXXXXXXXXX";
public final String IpServer="XXX.XXX.XXX.XXX";
String Query;
%>
<%
MySqlConnect(NomeDatabase, DatabaseUser, DatabasePassword);
Query ="SELECT * FROM "+NomeTabella;
ExecStmt(Query);
while (rs.next()) out.println(rs.getString(1));
%>
</body>
</html>
<%!
public void MySqlConnect(String fonte, String User, String Password){
try{
if ((con == null) || (con.isClosed())) {
url = "jdbc:mysql://"+IpServer+":3306/"+NomeDatabase;
Class.forName("org.gjt.mm.mysql.Driver");
con = DriverManager.getConnection(url, User, Password);
}
} catch (SQLException ex){
handleSQLException(ex);
} catch (Exception e) {
e.printStackTrace();
}
} // end MySqlConnect()
public void ExecStmt(String query) {
try{
stmt = con.createStatement();
rs = stmt.executeQuery(query);
rsmd = rs.getMetaData();
} catch(SQLException ex){
handleSQLException(ex);
}}
public void CloseStmt() {
try {
rs.close();
stmt.close(); } catch(SQLException ex){
handleSQLException(ex);
}} // end CloseStmt()
public void CloseCon(){
try { con.close();} catch(SQLException ex){ handleSQLException(ex);}}
// end CloseCon()
public void handleSQLException(SQLException ex){
while (ex != null){
if (ex.getErrorCode () != 0) {
System.out.println ("SQLState: " + ex.getSQLState ());
System.out.println ("Message: " + ex.getMessage ());
System.out.println ("Code: " + ex.getErrorCode ());
System.out.println ("");
} ex = ex.getNextException ();}}
%>
Per eseguire la JSP di esempio è necessario disporre di un servizio hosting che includa Tomcat, motore di elaborazione di Servlet e JSP, ed un database MySQL.
Le seguenti nostre offerte hosting supportano JSP/Servlet e database MySQL:
- J-Start
- J-Smart
- J-Pro
Per ogni informazione contattare il nostro Help Desk all'indirizzo email tech@mondoserver.com o al numero verde 800 124876.
Ultimo aggiornamento: 4 dicembre 2008
|