JAVAから簡単なコードでDB接続を行うサンプル。
環境
OS:Win10Pro
DB:Oracle19c(サンプルスキーマHR)
開発ツール:Jdeveloper
①Jdeveloper起動
・プロジェクト作成する




・プロジェクト完成
・プロジェクトにサーブレットを追加する




・サーブレットを開きコード書き換える

package project1;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import javax.sql.DataSource;
@WebServlet(name = “Servlet1”, urlPatterns = { “/servlet1” })
public class Servlet1 extends HttpServlet {
private static final String CONTENT_TYPE = “text/html; charset=windows-31j”;
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println(“<html>”);
out.println(“<head><title>Servlet1</title></head>”);
out.println(“<body>”);
Context context;
try {
context = new InitialContext();
DataSource ds;
ds = (DataSource) context.lookup(“java:comp/env/jdbc/connzzz”);
Connection con = ds.getConnection();
String selectStatement = “select job_id from jobs”;
PreparedStatement prepStmt = con.prepareStatement(selectStatement);
ResultSet rs = prepStmt.executeQuery();
while (rs.next()) {
String job_id = rs.getString(“job_id”);
out.println(job_id);
out.println(“<br>”);
}
rs.close();
prepStmt.close();
con.close();
} catch (NamingException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
out.println(“<p>The servlet has received a GET. This is the reply.</p>”);
out.println(“</body></html>”);
out.close();
}
}
}
<web-app xmlns=”http://java.sun.com/xml/ns/javaee” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd”
version=”3.0″>
<servlet>
<servlet-name>Servlet1</servlet-name>
<servlet-class>project1.Servlet1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet1</servlet-name>
<url-pattern>/servlet1</url-pattern>
</servlet-mapping>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/connzzz</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>

※WIN-2019というマシンにインストール済みの、Oracle19(12)のプラダガルDBのサンプルスキーマHRに接続する
・接続のテストボタンを押下して成功を確認する

・Javaから接続確認

・ブラウザにこれが表示されればOK

以上

