首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

一简单的树状bbs制作有关问题

2013-11-29 
一简单的树状bbs制作问题我定义了一个bbs.sql文件运行,和一个jsp文件,结果和我做的不一样,代码如下,求调试

一简单的树状bbs制作问题
我定义了一个bbs.sql文件运行,和一个jsp文件,结果和我做的不一样,代码如下,求调试。一简单的树状bbs制作有关问题一简单的树状bbs制作有关问题

drop table article;

create table article
(
id number primary key ,
title varchar2(4000),
cont varchar2(4000),
pid number,
pdate date, 
isleaf number(1), --0代表非叶子节点,1代表叶子节点
alevel number(2)
)

CREATE SEQUENCE article_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
MAXVALUE 1.0E28 -- 设置最大值
MINVALUE 1 
NOCYCLE  -- 一直累加,不循环
CACHE 40 -- 不建缓冲区
NOORDER;

CREATE TRIGGER TRG_ADD_TUSER  BEFORE
INSERT ON article FOR EACH ROW WHEN (new.id is null)
begin
select article_sequence.nextval into: new.id from dual;
end;

insert into article values (article_sequence.nextval, '蚂蚁大战大象', '蚂蚁大战大象',0,sysdate, 0,  0);
insert into article values (article_sequence.nextval, '大象被打趴下了', '大象被打趴下了',1, sysdate,0,1);
insert into article values (article_sequence.nextval, '蚂蚁也不好过','蚂蚁也不好过', 2, sysdate, 1,  2);
insert into article values (article_sequence.nextval, '瞎说', '瞎说',2,sysdate, 0,  2);
insert into article values (article_sequence.nextval, '没有瞎说', '没有瞎说',4,sysdate, 1,  3);
insert into article values (article_sequence.nextval, '怎么可能', '怎么可能',1,sysdate,  0, 1);
insert into article values (article_sequence.nextval, '怎么没可能','怎么没可能', 6, sysdate,1,  2);
insert into article values (article_sequence.nextval, '可能性是很大的','可能性是很大的', 6,sysdate, 1,  2);
insert into article values (article_sequence.nextval, '大象进医院了','大象进医院了', 2, sysdate,0,  2);
insert into article values (article_sequence.nextval, '护士是蚂蚁','护士是蚂蚁', 9, sysdate,1,  3);
commit;

<%@ page language="java" contentType="text/html; charset=gbk"
    pageEncoding="gbk"%>
<%@ page import="java.sql.*" %>

<%!
String str = "";
private void tree(Connection conn, int id, int level) {
Statement st = null;
ResultSet rs = null;
String preStr = "";
for(int i=0; i<level; i++) {
preStr += "----";
}
try {

st = conn.createStatement();
String sql = "select * from article where pid = " + id;
rs = st.executeQuery(sql);
String strLogin = "";

while(rs.next()) {

str += "<tr><td>" + rs.getInt("id") + "</td><td>" +
       preStr + rs.getString("title") + "</td></tr>";
if(rs.getInt("isleaf") != 0) {
tree(conn, rs.getInt("id"), level+1);
}
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(st != null) {
st.close();
st = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
%>
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "system", "1125919HAIxing");
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select * from article where pid = 0");
while(rs.next()) {
str += "<tr><td>" + rs.getInt("id") + "</td><td>" +
       rs.getString("title") + "</td></tr>";
if(rs.getInt("isleaf") != 0) {
tree(conn, rs.getInt("pid"), 1);
}
}
rs.close();
st.close();
conn.close();
 %>
<!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=gbk">
<title>Insert title here</title>
</head>
<body>

<table border="1">
<%= str %>
 
</table>
</body>
</html>


[解决办法]
这好像是哪本书上的练习吧??
仔细看看书上的代码

热点排行