Esempio di servlet con una query su un database

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>My CD - Elenco</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>My CD - Elenco</h1>");

try {
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    Connection conn = DriverManager.getConnection("jdbc:mysql://urlhost/nomedb", "utente", "password");
    Statement stat = conn.createStatement();
    ResultSet rs = stat.executeQuery("SELECT * FROM cd");
    while (rs.next()) {
        if (rs.isFirst()) {
            out.println("<table border=\"1\" cellpadding=\"2\" cellspacing=\"0\">");
            out.println("<caption>Tabella dei miei CD musicali</caption>");
            out.println("<thead>");
            out.println("<tr><th>Id</th><th>Titolo</th><th>Interprete</th><th>Anno</th></tr>");
            out.println("</thead>");
            out.println("<tbody>");
        }
        out.print("<tr>");
        out.print("<td>" + rs.getInt("id") + "</td>");
        out.print("<td>" + rs.getString("titolo") + "</td>");
        out.print("<td>" + rs.getString("autore") + "</td>");
        out.print("<td>" + rs.getString("anno") + "</td>");
        out.println("</tr>");
        if (rs.isLast()) {
            out.println("</tbody>");
            out.println("</table>");
        }
    }
    conn.close();
} catch (InstantiationException | IllegalAccessException | ClassNotFoundException | SQLException ex) {
    out.println("<p>" + ex.toString() + "<br/>" + ex.getMessage() + "</p>");
}

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