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

筑论坛的代码提示老是出错,求高手解答

2013-01-02 
建论坛的代码提示老是出错,求高手解答%@ 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去查询,不会出现死循环吗?

热点排行