반응형
개요
톰캣 에서 Oracle 관련 커넥션 설정입니다.
(@todo JDBC 연결인데, JNDI 라고 적어뒀었네. 이유가 뭐였지...)
1. 톰캣 lib 폴더에 추가.
다음의 파일들을 lib 폴더에 추가해줍니다.
commons-collections-3.1.jar
commons-dbcp-1.2.1.jar
commons-pool-1.2.jar
ojdbc14.jar
[추가할 Lib 파일 첨부] (가능하다면, 최신 버전으로 구해서 받으시길 권장합니다)
commons-dbcp-1.2.1.jar
commons-pool-1.2.jar
ojdbc14.jar
2. 사이트/Context명.xml 에 추가
톰캣 conf/Catalina/Context명.xml 에 다음을 추가
(참고 : 보통 톰캣 설치 경로의 conf 폴더 하위에 찾아보면, 각 사이트명 별로 폴더가 있고 그 하위에 Root.xml 이 있습니다. 어플리케이션의 구조도에 따라서 다른 명칭의 xml 파일이 있을 수 있습니다. )
<Context ~~>
<Resource name="jdbc/JDBC명아무거나"
auth="Container"
type="javax.sql.DataSource"
username="아이디"
password="패스워드"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:orcl"
maxActive="100"
maxIdle="30"
loginTimeout="10"
maxWait="10000"/>
</Context>
3. 웹문서폴더에서 WEB-INF/web.xml 에 추가
<resource-ref>
<description>OracleDatasource</description>
<res-ref-name>jdbc/JDBC명아무거나</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
4. JSP 소스
<%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=utf-8"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%
/*************************************************************************************************************
* 디비연결 셋팅
*************************************************************************************************************/
//디비연결 변수[게시물]
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
//디비연결 설정 [START]
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String user = "아이디";
String passwd = "패스워드";
//디비연결 설정 [END]
/*************************************************************************************************************
* 디비연결 및 쿼리 질의 [START]
*************************************************************************************************************/
try{
Context initCtx = new InitialContext();
Context envCtx = (Context)initCtx.lookup("java:/comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/orclTp");
conn = ds.getConnection();
//stmt = conn.createStatement();
//rs = stmt.executeQuery("select count(*) from dual");
pstmt = conn.prepareStatement("select count(*) from dual");
rs = pstmt.executeQuery();
while(rs.next()){ //레코드를 이동시킨다.
out.println("While Test");
}
} finally {
if (rs != null) try {rs.close(); }catch(SQLException ex) {}
if (stmt != null) try {stmt.close(); } catch(SQLException ex) {}
if (conn != null) try {conn.close(); }catch(SQLException ex) {}
}
%>
반응형
'개발 > DB 커넥션' 카테고리의 다른 글
[PHP, MYSQL] PHP + MYSQL 연결 테스트 예제 (mysqli 클래스 방식) (업데이트 2017-11-24) (0) | 2016.01.30 |
---|---|
[PHP,MYSQL] PHP + MYSQL 연결 테스트 예제 (original) (업데이트 2015-03-15) (2) | 2013.12.03 |
[jsp + mysql] 연결 테스트 예제 (PreparedStatement) (0) | 2011.05.06 |
JSP + MySQL 연결 테스트 예제 (0) | 2010.12.03 |
JSP + Oracle 연결 테스트 예제 (JNDI + PreparedStatement) (0) | 2010.11.02 |
JSP + Oracle 연결 테스트 예제 (JNDI) (0) | 2010.11.02 |
[PHP, ORACLE] PHP & 오라클 디비 연결 테스트 (업데이트 2017-11-24) (0) | 2010.05.31 |
JSP + Oracle 연결 테스트 예제 (0) | 2010.05.18 |