第9章 データベース接続
データベース接続
homepage
# **データベース接続** *** JDBCドライバをロードすると、java.sql.DriverManagerクラスに利用可能なドライバとして登録されます。そしてデータベースへ接続するにはDriverManagerに接続しようとするデータベースの情報を指定し接続を行います。<br> まず下記のクラスを見てください。 ``` java.lang.Object java.sql.DriverManager public class DriverManager extends Object ``` データベースへの接続を確立するには「DriverManager」クラスで用意されている"getConnection"メソッドを使います。 **getConnection** ``` public static Connection getConnection(String url, String user, String password) throws SQLException ``` #### **例** **DatabaseTest1.java** ``` package Database; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/DatabaseTest1") public class DatabaseTest1 extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html; charset=UTF-8"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>データベーステスト</title>"); out.println("</head>"); out.println("<body>"); out.println("<p>"); Connection conn = null; String url = "jdbc:mysql://localhost:3306/companydata?serverTimezone=JST"; String user = "root"; String password = "root"; try { Class.forName("com.mysql.jdbc.Driver"); out.println("ドライバのロードに成功しました<br>"); conn = DriverManager.getConnection(url, user, password); out.println("データベース接続に成功しました<br>"); } catch (ClassNotFoundException e) { out.println("ClassNotFoundException:" + e.getMessage()); } catch (SQLException e) { out.println("SQLException:" + e.getMessage()); } catch (Exception e) { out.println("Exception:" + e.getMessage()); } finally { try { if (conn != null) { conn.close(); out.println("データベース切断に成功しました"); } else { out.println("コネクションがありません"); } } catch (SQLException e) { out.println("SQLException:" + e.getMessage()); } } out.println("</p>"); out.println("</body>"); out.println("</html>"); } } ``` #### **実行結果** <!--graph9-1.png --> <img src="https://i.loli.net/2019/07/01/5d19cf4fac31e67039.png" width="40%" /> #### **付録** WebAppライブラリーにjarを追加する場合の手順<br> (1)現在のWebAppライブラリーを除去 <!--graph9-2.png --> <a href="https://i.loli.net/2019/11/01/TCADh5uj9qyUvSH.png" target="_blank"> <img src="https://i.loli.net/2019/11/01/TCADh5uj9qyUvSH.png" width="40%" /></a> (2)プロジェクト下にWebContent/WEB-INF/libにmysql-connector-java-8.0.18.jarを追加します。<br> (3)プロジェクトを右クリックして、「ビルドパス」を選択→右メニューの「ビルドパスの構成」をクリックします。 (4)ライブラリータブに「ライブラリーの追加」ボタンを押下します。 <!--graph9-3.png --> <a href="https://i.loli.net/2019/11/02/LY8Qc3I4rZ6UEB7.png" target="_blank"> <img src="https://i.loli.net/2019/11/02/LY8Qc3I4rZ6UEB7.png" width="40%" /></a> (5)「Web Appライブラリー」を選択して、「次へ」をクリックします。 <!--graph9-4.png --> <a href="https://i.loli.net/2019/11/02/itOCHzlnFpLvsEu.png" target="_blank"> <img src="https://i.loli.net/2019/11/02/itOCHzlnFpLvsEu.png" width="40%" /></a> (6)プロジェクトを選択して、「完了」をクリックします。 <!--graph9-5.png --> <a href="https://i.loli.net/2019/11/02/rngQRfzMEj2CbGK.png" target="_blank"> <img src="https://i.loli.net/2019/11/02/rngQRfzMEj2CbGK.png" width="40%" /></a>
content
戻る