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

建论坛的代码提示老是出错,求高手解答,该如何解决

2012-04-14 
建论坛的代码提示老是出错,求高手解答%@ page pageEncodingGB18030%%@ page importjava.sql.* ,ja

建论坛的代码提示老是出错,求高手解答
<%@ page pageEncoding="GB18030"%>
<%@ page import="java.sql.* ,java.io.*,com.bjsxt.bbs.*,java.util.*"%>
<%!
  private void tree(Set<Article> articles,Connection conn,int id,int grade){
  String sql="select * from article where pid"+id;
  Statement stat=DB.createstatement(conn);
  ResultSet res=DB.excuteQuery(stat,sql);
  try{
  while(res.next()){
  Article a=new Article();
  a.setId=(rs.getInt("id"));
  a.setPid=(rs.getInt("pid"));
  a.setRootId=(rs.getInt("rootid"));
  a.setTitle=(rs.getString("title"));
  a.setPdate=(rs.getTimestamp("pdate"));
  a.setGrade=(grade));
  a.setIsleaf=(rs.getInt("isleaf")==0?true:false);
  articles.add(a);
  for(!a.setIsleaf()){
  tree(articles,conn, a.getId(),grade+1);
  }
  }
  } catch(SQLException e){
  e.printStackTrace();
 
  }
  }
   
 %>
 <%
 Set<Article> articles=new HashSet<Article>();
 Connection conn=DB.getconn();
 tree(articles,conn,0,0);
 DB.close(conn);
 %>
<%
  for(Iterator<Article> it=articles.iterator();it.hasNext();){
  Article a=it.next();
  %>
<%
}
%>
找了好半天,还是不知道哪里错了,急求高手解答

[解决办法]
没有错误提示?
[解决办法]
我看了一下错误有很多,重构系统可以先看一下原来的代码。
1,ResultSet res=DB.excuteQuery(stat,sql);这里是res但是rs.getInt("id");这里却用rs取值。
2,a.setGrade=(grade));这句多出一个')';
3,for(!a.setIsleaf()){
tree(articles,conn, a.getId(),grade+1);
}
你这是写for 循环呢?还是if 判断?
以上会出现编译错误
4,为什么不把三块代码写在一起呢?
为什么
<%
for(Iterator<Article> it=articles.iterator();it.hasNext();){
Article a=it.next();
%>
<%
}
不直接写成
<%
for(Iterator<Article> it=articles.iterator();it.hasNext();){
Article a=it.next();
}
 %>

%>
5,String sql="select * from article where pid"+id;
你用id去查询纪录。
然后
if(!a.setIsleaf()){
tree(articles,conn, a.getId(),grade+1);
}
又回调方法本身,并且同样用id去查询,不会出现死循环吗?

热点排行