Ayuda con un un login java

Iniciado por dato000, 24 Mayo 2011, 21:42 PM

0 Miembros y 1 Visitante están viendo este tema.

dato000

Buenas, veran, tengo este programa, el cual cuando crea un nuevo usuario, guarda un archivo serializable con el nombre del Id del nuevo usuario, pero cuando quiero entra al log, no se como hacer para que cuando uno ingrese el numero Id, accese al otro frame para mostrar resultados.

de momento solo puedo entrar con un perfil "root" por decirlo asi, en el que si escribo "profesor" entra al otro JFrame sin problemas.

Ayudenme por favor, solo me falta ese ultimo detalle para terminar este proyecto, y realmente no pude hallar el chiste

aqui el codigo: son varias clases, pero solo pondre las clases relacionadas (la ventana principal, la clase que me guarda y lee el archivo serializable, el submenu al que puedo acceder con el login, y la clase que me guarda los datos del usuario.

dejo las partes importantes del codigo, el resto son paneles y botones y graficos.


AQUI LA VENTANA PRINCIPAL

package guiDoxa;

import datos.Crea_Usuario;
import funcion.Archivo;
import javax.swing.JOptionPane;

public class Ventana extends javax.swing.JFrame {

  .
  .
  .                        

   private void loginActionPerformed(java.awt.event.ActionEvent evt) {                                      
       // TODO add your handling code here:
       Crea_Usuario nuevoUser = new Crea_Usuario();
       Archivo referencia = new Archivo();
       
       Object obj = referencia.leer(""+nuevoUser.getId());
       System.out.println(nuevoUser.getId());
       Crea_Usuario referenciar = (Crea_Usuario)obj;
       
       String seleccion = JOptionPane.showInputDialog(
               null,
               "NOMBRE DE USUARIO",
               JOptionPane.QUESTION_MESSAGE);
       if (seleccion.equals("profesor") || seleccion.equals(referenciar)){
           Calificacion VentanitaUser = new Calificacion();
           new Calificacion().setVisible(true);
       }
       else{
           JOptionPane.showMessageDialog(null,
                             "ERROR, NO EXISTE USUARIO");
       }
   }                                    

   private void crearUsuarioActionPerformed(java.awt.event.ActionEvent evt) {                                            
       // TODO add your handling code here:
       Usuario nuevoUser = new Usuario();
       new Usuario().setVisible(true);
   }                                            

   .
   .
   .


aqui el archivo que guarda


package funcion;

import java.io.*;
public class Archivo {

    public boolean guardar(Object ob, String archivo){
        {
            ObjectOutputStream is = null;
            try{
                FileOutputStream fis = new FileOutputStream(archivo);
                is = new ObjectOutputStream(fis);
                is.writeObject(ob);
                is.close();
                fis.close();
                return true;
            }catch(FileNotFoundException ex){
                System.out.println("ARCHIVO NO ENCONTRADO");
            }catch(IOException ex){
                System.out.println("ARCHIVO NO SE ALMACENARA");
            }
        }
        return false;
    }

    public Object leer(String archivo){

        try{
            FileInputStream fis = new FileInputStream(archivo);
            ObjectInputStream is = new ObjectInputStream(fis);
            Object objeto = (Object)is.readObject();
            is.close();
            fis.close();
            return objeto;
        } catch(ClassNotFoundException ex){
            System.out.println("NO SE PUEDE CREAR OBJETO LEIDO");
        }catch(FileNotFoundException ex){
            System.out.println("NO SE ENCUENTRA EL ARCHIVO");
        }catch(IOException ex){
            System.out.println("NO SE CREARA EL OBJETO POR ESTAR VACIO");
        }
        return null;
    }

}


aqui el que me guarda los datos del usuario creado

package datos;

import java.io.Serializable;
public class Crea_Usuario implements Serializable{
    private String nombre;
    private String apellido;
    private int edad;
    private int id;
    private String semestre;
    private Double promedio;
   
    //Encapsulamiento
   


POR FAVOR, LES PIDO QUE ME AYUDEN, QUE SOLO ME FALTA ESE DETALLE