環境/前提条件

mysql> select * from users;
+------+---------+-----------------+----------+
| id   | name    | email           | password |
+------+---------+-----------------+----------+
|    1 | kimura  | kimura@foo.com  | kimpwd   |
|    2 | tanaka  | tanaka@foo.com  | tanapwd  |
|    3 | yoshida | yoshida@foo.com | yoshipwd |
+------+---------+-----------------+----------+

JDBCドライバのダウンロード

$ cp ~/Downloads/mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar /Applications/apache-tomcat-8.0.39/lib/

サンプルプロジェクト&Servlet作成

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class SelectSampleServlet
 */
@WebServlet("/SelectSampleServlet")
public class SelectSampleServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public SelectSampleServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // TODO Auto-generated method stub
        java.sql.Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        ArrayList<String> list = new ArrayList<String>();
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "hoge");
            stmt = conn.createStatement();
            rs = stmt.executeQuery("Select * from users");
            
            while (rs.next()) {
                String s = "<td>" + rs.getInt(1) + "</td>" + "<td>" + rs.getString(2) + "</td>"
                        + "<td>" + rs.getString(3) + "</td>" + "<td>" + rs.getString(4) + "</td>";
                list.add(s);
            }
        } catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        } finally {
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException sqlEx) {

                }
            }
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException sqlEx) {

                }
            }
        }
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">");
        out.println("<head><title>" + "Sample DB Servlet" + "</title></head>");
        out.println("<body>");
        out.println("<table border=1>");
        out.println("<tr><th>id</th>" + "<th>name</th>" + "<th>email</th>" + "<th>password</th></tr>");
        for (String str : list) {
            out.println("<tr>" + str + "</tr>");
        }
        out.print("</table>");
        out.println("</body>");
        out.println("</html>");
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}

Servlet実行


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS