Я работаю над примером на http://java.sun.com/docs/books/tutorial/uiswing/examples/components/GenealogyExampleProject/src/components/GenealogyExample.java
Я хотел настроить его так, чтобы вместо этого данные извлекались из таблицы (folder_id, folder_name, parent_id [внешний ключ для определения родителя].
Вот мой код
public Person getGenealogyGraph() throws SQLException {
Connection con=null;
Statement st=null;
ResultSet rs=null;
String driver ="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/";
String db="java";
con=DriverManager.getConnection(url + db, "root", "");
ArrayList list=new ArrayList();
try {
String sql="Select * from folder";
st=con.createStatement();
rs=st.executeQuery(sql);
list.add("Current Folders");
while(rs.next()) {
String folderName = rs.getString("folder_name");
list.add(folderName);
// System.out.println(folderName);
//Person a1 = new Person(folderName);
}
} catch (Exception e) {
System.out.println(e);
}
rs.close();
st.close();
con.close();
Object hierarchy[]=list.toArray();
for(int i=1; i<hierarchy.length; i++) {
Person a+i=new Person(hierarchy[i]);
}
Если я жестко закодирую его как Персона a1 = new Person ("Джек (прадедушка)"); работает нормально. Однако я хотел поместить его в цикл с переменной i: -
Object hierarchy[]=list.toArray();
for(int i=1; i<hierarchy.length; i++) {
Person a+i=new Person(hierarchy[i]);
}
Как сделать так, чтобы переменная i и "a" были объединены вместе? В PHP мы обычно объединяем их с "." например, "a". $ i;
Спасибо :) Любой другой пример создания деревьев из базы данных также очень важен.
Заранее спасибо