能不能给我写一个具体的方法。俺头一次用java,大家帮帮忙,引引路啊

解决方案 »

  1.   

    public getOne(int oid)
    {
      rs = select id, name from biao where pid = oid;
    if(rs.getcount() != 0)
      return id , name;
    else return -1;
    }public myTest()
    {
       aa[] = getOne(1);
       int sid = aa[0];
       String sname = aa[1];
       while(sid != -1)
      {
          aa[] = getOne(sid);
          sname += aa[1];
          sid = aa[0];
       }
    }思路这样好像可行。
      

  2.   

    抱歉,知道怎么用SQL,就是不知道怎么用JAVA
      

  3.   

    用一个N长的数组存放PID,用一个hashtable
    存放ID和对应的NAME,这样在写一个方法使得
    数组和hashtable对应起来。不久能取道了吗。
    Hashtable的key是ID,value是NAME.
    具体的代码,就不写了,你是不是要
    PID=ID的对应的名字输出阿。
      

  4.   

    回复jackkui(长空铸剑) 
    我只是想要某一个id的上层的name,上上层的name,上上上层的name,然后把这些name拼起来,组合成一个url.
      

  5.   

    回复 spiritsl(梦雨心蓝) 
    谢谢你了。你的代码我正在看。
      

  6.   

    vector 中存的是PID,以字符串存放
    hashTable中存放id和name的值,这两个
    你自己建立吧,下面的方法共你参考。public Vector getNames(int pid)
    {
     int currentIndex = vector.indexOf(String.valueOf(pid));
     Vector names = new Vector();
     for(int i = currentIndex ; i <vector.size() ; i++)
      names.addElements(hashTable.get(vector.elementAt(i))); 
      return names;
    }
      

  7.   

    试试这个,最后所有的name都在allNames中。public class Test
    {
    Vector allNames = new Vector();//to store all the names;

    public static void travelNameByPid( int pid )
    {
    if( pid == 1 ) allNames.add( new String("jhjh") );
    else
    {
    allName.add( new  String( travelNameByPid( pid ) ) );
    doDisplayByPid( getIdByPid( pid ) );
    }
    }

    private int getIdByPid( int pid )
    {
    //do by your logic here
    }

    private int getNameByPid( int pid )
    {
    //do by your logic here
    }
    }
      

  8.   

    spiritsl(梦雨心蓝),agen10120216(agen)
    你的写法如何保证name的顺序呢?我的意思是我要把最底层的依次向上排列name
      

  9.   

    Vector allNames = new Vector();(String)allNames.get( 0 )就是最底层的name,(String)allNames.get( allName.size() );就是根节点的name,也就是"jhjh"
      

  10.   

    agen10120216(agen) 
    travelNameByPid( pid )
    doDisplayByPid( getIdByPid( pid ) );这两句的功能是什么?请原谅我的愚笨。
    我取出来的数据是根据id得到上一层到上n层的名字的,这怎么体现呢?