board 테이블의 글을 미리 30줄 정도 입력해 놓은 상태에서 이 파일을 테스트한다. BBS 03과 동일하며 테이블을 board 로 수정함에 따라 필드명들도 수정했다.
<%@ page language="java" contentType="text/html; charset=EUC-KR"%>
<%@ page import="java.sql.*, javax.sql.*, javax.naming.*" %>
<%
Context initCtx = new InitialContext();
DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/myoracle");
Connection conn = ds.getConnection();
String sql = "select LEVEL, subject, writer, reg_date from board ";
sql += "START WITH ref=0 CONNECT BY PRIOR num=ref ";
sql += "ORDER SIBLINGS BY num asc";
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
%>
<html>
<head><title>계층구조로 출력하기 04</title>
<style type="text/css">
TABLE {
font-size:70%;
}
</style>
</head>
<body><p><center> 계층구조로 출력하기 연습
<hr width=70%>
<table border=0 cellspacing=0 cellpadding=3>
<%
while(rs.next()){ %>
<tr>
<%
int level = rs.getInt("LEVEL")*4;
String nbsp = "";
for(int i=0;i<level;i++) {
nbsp += " ";
}
%>
<td align=left><%=nbsp+rs.getString("SUBJECT")%></td>
<td align=left><%=rs.getString("WRITER")%></td>
<td align=left><%=rs.getString("REG_DATE")%> </td>
</tr>
<%}
rs.close();
pstmt.close();
conn.close();
%>
</table>
</center>
</body>
</html>
<%@ page import="java.sql.*, javax.sql.*, javax.naming.*" %>
<%
Context initCtx = new InitialContext();
DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/myoracle");
Connection conn = ds.getConnection();
String sql = "select LEVEL, subject, writer, reg_date from board ";
sql += "START WITH ref=0 CONNECT BY PRIOR num=ref ";
sql += "ORDER SIBLINGS BY num asc";
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
%>
<html>
<head><title>계층구조로 출력하기 04</title>
<style type="text/css">
TABLE {
font-size:70%;
}
</style>
</head>
<body><p><center> 계층구조로 출력하기 연습
<hr width=70%>
<table border=0 cellspacing=0 cellpadding=3>
<%
while(rs.next()){ %>
<tr>
<%
int level = rs.getInt("LEVEL")*4;
String nbsp = "";
for(int i=0;i<level;i++) {
nbsp += " ";
}
%>
<td align=left><%=nbsp+rs.getString("SUBJECT")%></td>
<td align=left><%=rs.getString("WRITER")%></td>
<td align=left><%=rs.getString("REG_DATE")%> </td>
</tr>
<%}
rs.close();
pstmt.close();
conn.close();
%>
</table>
</center>
</body>
</html>