1 源码
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import javax.swing.JFrame;
- import javax.swing.JTree;
- import javax.swing.tree.DefaultMutableTreeNode;
- public class Main extends JFrame
- {
- private static Connection con;
- private static Statement ste = null;
- ResultSet rs;
- // 连接数据库
- static
- {
- String driver = "com.mysql.jdbc.Driver";
- String connection = "jdbc:mysql://localhost:3306/test";
- // 数据库用户名
- String user = "root";
- // 数据库密码
- String password = "123456";
- try
- {
- Class.forName(driver);
- }
- catch (ClassNotFoundException e)
- {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- try
- {
- con = DriverManager.getConnection(connection, user, password);
- }
- catch (SQLException e)
- {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- try
- {
- ste = con.createStatement();
- }
- catch (SQLException e)
- {
- // TODO Auto-generated catch block
- // e.printStackTrace();
- }
- }
- Main()
- {
- DefaultMutableTreeNode node = new DefaultMutableTreeNode("root");
- createNodes(node, "0");
- JTree tree = new JTree(node);
- add(tree);
- setSize(200, 200);
- setVisible(true);
- }
- public static void main(String[] argv) throws Exception
- {
- new Main();
- }
- public void createNodes(DefaultMutableTreeNode parent, String ParentID)
- {
- DefaultMutableTreeNode temp = null;
- String strsql = "select ID,Name,ParentID from t_owner where ParentID ='" + ParentID + "'";
- // 光标的相对位置
- int i = 0;
- try
- {
- rs = ste.executeQuery(strsql);
- while (rs.next())
- {
- i++;
- temp = new DefaultMutableTreeNode(rs.getString("Name"));
- parent.add(temp);
- createNodes(temp, rs.getString("ID"));
- rs = ste.executeQuery(strsql);
- // 重新定位光标
- rs.relative(i);
- }
- }
- catch (Exception e)
- {
- System.out.println(e);
- }
- }
- }
2 截图