[jsp] tomcat 6 에서 JNDI 설정하기
1.1 JNDI 설정
(톰캣 전체 적용) 세개 파일에 JNDI 설정을 추가합니다.
1) $CATALINA_HOME\conf\server.xml
<GlobalNamingResources>
...
<Resource
name="jdbc/SpringDS"
auth="Container"
type="javax.sql.DataSource"
username="javajigi"
password="password"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/spring?autoReconnect=true&characterEncoding=euckr"
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true"
maxActive="1000"
maxIdle="30"
maxWait="180"
/>
</GlobalNamingResources>
2) $CATALINA_HOME\conf\context.xml
<Context>
...
<ResourceLink global="jdbc/SpringDS" name="jdbc/SpringDS" type="javax.sql.DataSource"/>
</Context>
3) $CATALINA_HOME\conf\web.xml
<web-app>
...
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/SpringDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
(웹프로젝트에만 적용)
1) [웹프로젝트홈]\WEB-INF\web.xml
<web-app>
...
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/SpringDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
2) [웹프로젝트홈]\META-INF\context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="false" privileged="true" useHttpOnly="true" >
<Resource
name="jdbc/SpringDS"
auth="Container"
type="javax.sql.DataSource"
username="javajigi"
password="password"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/spring?autoReconnect=true&characterEncoding=euckr"
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true"
maxActive="1000"
maxIdle="30"
maxWait="180"
/>
</Context>
1.2 웹프로젝트에 jar 파일을 복사합니다.
1) Jakarta-Commons DBCP
2) Jakarta-Commons Collections
3) Jakarta-Commons Pool
를 lib에 복사해야 하나 tomcat의 tomcat-dbcp.jar 에 class 파일로 포함되어 있으므로 추가할 필요는 없음
해당하는 웹어플리케이션에 접속할 db의 jdbc jar를 복사합니다.
mysql-connector-java-5.1.19-bin.jar
1.3 테스트하기
test.jsp
<%@ page contentType="text/html; charset=EUC-KR" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
Context ictx = new InitialContext();
Context ectx = (Context)ictx.lookup("java:comp/env");
DataSource ds = (DataSource)ectx.lookup("jdbc/SpringDS");
conn = ds.getConnection();
pstmt = conn.prepareStatement("SELECT NOW()");
rs = pstmt.executeQuery();
if(rs.next()) {
out.println(rs.getString(1));
}
}
catch(Exception e) {
System.out.println(e.toString());
out.println(e.toString());
}
finally {
if(rs != null)
rs.close();
if(pstmt != null)
pstmt.close();
if(conn != null)
conn.close();
out.println("finally");
}
%>
1.4 설정이 끝나면 웹서버 실행하고 접속해 봅니다.
[jsp] tomcat 6 에서 JNDI 설정하기
'programming > jsp' 카테고리의 다른 글
[jsp] 자바스크립트 로그 만들기 (0) | 2012.05.17 |
---|---|
[jsp] 해시뱅 #! (0) | 2012.05.10 |
[JSP] jsp, servlet 흐름에 대해서 (0) | 2012.04.30 |
openfire 참고 사이트 (0) | 2012.04.19 |
openfire Administration Console (0) | 2012.04.19 |