연동할때 web.xml, context.xml의 코드 가 있는곳
http://tomcat.apache.org/tomcat-9.0-doc/jndi-datasource-examples-howto.html#Oracle_8i,_9i_&_10g
public static Connection 디비연결() {
try {
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
DataSource ds = (DataSource) envContext.lookup("jdbc/myoracle");
Connection conn = ds.getConnection();
System.out.println("db연결성공");
return conn;
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("연결실패");
return null;
}
2.WEB.INF 안에 web.xml파일만들기
jdbc/myoracle이거는 context.xml의 name과 맞춰야됨
<web-app version="4.0"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd">
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/myoracle</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
3.META-INF 안에 context.xml파일 만들기
context.xml은 메모리에 올릴때 한번실행
oracle.jdbc.driver.OracleDriver 모든 규칙이 들어가있는 라이브러리
driverClassName="oracle.jdbc.driver.OracleDriver"
driverClassName="oracle.jdbc.OracleDriver" 옛날꺼
127.0.0.1 루프백 ip 나한테 돌아오는 ip
1521접속 -> 포트 번호
mysid -> xe
maxTotal="20" maxIdle="10" 최대 동시접속 20명 10개 만들어둔다
<Context>
<Resource name="jdbc/myoracle" auth="Container"
type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:xe"
username="cos" password="cos1234" maxTotal="20" maxIdle="10"
maxWaitMillis="-1"/>
</Context>
4.webapp안에 jsp파일 만들어서 디비연결 테스트하기
<%@page import="com.cos.blog.db.DBConn"%>
<%
DBConn.디비연결();
%>
오류나면 오라클xe서비스 돌고있는지 확인