Autor Tema: Como llenar un jTree con Base de Datos... :D...  (Leído 157 veces)

jsanchez

  • Mensajes: 14
  • + Información + Tecnología + Programación
    • MSN Messenger - juan.smoctezuma@gmail.com
    • Ver Perfil
    • Email
Como llenar un jTree con Base de Datos... :D...
« : agosto 30, 2010, 10:43:37 pm »
Pus a peticion de unos amigos aqui esta como llenar un jTree desde una base de datos jejeje espero sea de ayuda y un saludote a todos...

Primero insertamos un jTree o Arbol desde nuestra paletaa nuestro panel:


Vamos a propiedades en el arpatado de codigo:

Despues cambiamos el nombre de nuestro arbol por el que gustemos:


Código: [Seleccionar]
        //Definiendo un Modelo y Llenando grupos y contactos
        DefaultMutableTreeNode root = new DefaultMutableTreeNode("Lista de Contactos");
        DefaultTreeModel modelo = new DefaultTreeModel(root);
        listaContacts.setModel((TreeModel) modelo);

        // Cambiamos los iconos a nuestro arbol
        DefaultTreeCellRenderer render = (DefaultTreeCellRenderer) listaContacts.getCellRenderer();
        render.setLeafIcon(new ImageIcon("src//mensajero/Cliente/Images/usuarios.png"));
        render.setOpenIcon(new ImageIcon("src//mensajero/Cliente/Images/principal.png"));
        render.setClosedIcon(new ImageIcon("src//mensajero/Cliente/Images/grupos.png"));

        //Contador de Categorias
        int conCat = 0;
        String nomCat = "";
        Connection conn = null;
        PreparedStatement stmt;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection(url, usuario, pass);
            if (conn != null) {
                Statement ins = conn.createStatement();
                ResultSet dt = ins.executeQuery("SELECT * FROM grupo WHERE login ='" + mensaj.nomUSUARIO + "'");
                while (dt.next()) {
                    // Construccion de Categorias
                    nomCat = dt.getString("nombre");
                    DefaultMutableTreeNode cat = new DefaultMutableTreeNode(dt.getString("nombre"));
                    modelo.insertNodeInto(cat, root, conCat);

                    //Contador de Usuarios
                    int conUsua = 0;
                    try {
                        Class.forName("com.mysql.jdbc.Driver");
                        conn = DriverManager.getConnection(url, usuario, pass);
                        if (conn != null) {
                            Statement inss = conn.createStatement();
                            ResultSet dts = inss.executeQuery("SELECT * FROM lista_contactos WHERE login ='" + mensaj.nomUSUARIO + "' AND grupo = '" + nomCat + "'");
                            while (dts.next()) {
                                // Construccion de Usuarios
                                DefaultMutableTreeNode usuas = new DefaultMutableTreeNode(dts.getString("amigo"));
                                modelo.insertNodeInto(usuas, cat, conUsua);
                            }
                            conn.close();
                        }
                    } catch (SQLException ex) {
                        System.out.println("Error al conectar la base de datos: " + url);
                    } catch (ClassNotFoundException ex) {
                        System.out.println(ex);
                    }

                }
                conn.close();
            }
            /////
            cliente = new Cliente(this);
            cliente.conexion();
            nomUsers = new Vector();
            cliente.pedirUsuarios();

            //ponerActivos
            //Numero de conversaciones privadas
            privada = new Vector();
            /////
        } catch (SQLException ex) {
            System.out.println("Error al conectar la base de datos: " + url);
        } catch (ClassNotFoundException ex) {
            System.out.println(ex);
        }
pues bueno con este peque