1. xml 환경설정
(1) context.xml (프로젝트>Webapp>META-INF>context.xml)
------------------------------------------------------------------------------
<Context>
중략 ... ...
<Resource name="jdbc/techLabsDS"
auth="Container"
type="javax.sql.DataSource"
username="아이디입력"
password="패스워드입력"
driverClassName="com.ibm.db2.jcc.DB2Driver"
url="jdbc:db2://연결할 해당 IP주소 입력:50000/DB명 입력"
maxActive="8"
maxIdle="4" />
</Context>
------------------------------------------------------------------------------
(2) server.xml (프로젝트>Webapp>META-INF>server.xml)
------------------------------------------------------------------------------
<GlobalNamingResources>
중략 ... ...
<Resource name="jdbc/techLabsDS" auth="Container"
type="javax.sql.DataSource"
username="아이디입력"
password="패스워드입력"
driverClassName="com.ibm.db2.jcc.DB2Driver"
url="jdbc:db2://
연결할 해당 IP주소 입력 :50000/
DB명 입력 "
maxActive="8"
maxIdle="4"/ >
</GlobalNamingResources>
------------------------------------------------------------------------------
(3) web.xml (프로젝트>Webapp>WEB-INF>web.xml)
------------------------------------------------------------------------------
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
metadata-complete="true" version="3.0">
<resource-ref>
<description>DB Connection Pool </description>
<res-ref-name>jdbc/techLabsDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
------------------------------------------------------------------------------
(4) 위 1, 2, 3 에서 주의사항!!
- url 입력 시 localhost 보다는 IP주소를 입력하는 것이 잘 연결된다. (내 경우에는 무조건 에러 발생)
- Resource name 이나 res-ref-name dp 에 있는 명칭은 반드시 똑같이 한다. (이걸로 연결하기 때문에..)
(5) jsp 작성
------------------------------------------------------------------------------
<%@ page import="java.sql.*, javax.naming.*,
javax.naming.Context, javax.naming.InitialContext, javax.sql.DataSource" %>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
테스트
<%
Statement stmt = null;
ResultSet rs = null;
Connection con = null;
try{
Context initCtx = new InitialContext();
Context envCtx = (Context)initCtx.lookup("java:comp/env/");
DataSource ds = (DataSource)envCtx.lookup("jdbc/techLabsDS");
con = ds.getConnection();
out.write("DBCP Connection. <br><br>");
String sQuery = "sql 구문 입력";
stmt = con.createStatement();
rs = stmt.executeQuery(sQuery);
while (rs.next()) {
out.write(rs.getString(1) + "\t");
}
}catch (Exception ex) {
ex.printStackTrace();
} finally {
if (rs != null) try {rs.close();} catch (Exception ex2) {}
if (stmt != null) try {rs.close();} catch (Exception ex3) {}
if (con != null) try {rs.close();} catch (Exception ex4) {}
}
%>
</body>
</html>
------------------------------------------------------------------------------
위 색칠된 부분이 연결 부분임
(굵은 글씨는 에러가 가장 많이 발생되는 부분으로, 에러 발생 시 이 부분을 중점적으로 수정하면 된다.)
댓글 없음:
댓글 쓰기