Está en la página 1de 4

Crear un formulario de inicio de sesin utilizando NetBeans IDE

Cmo crear un formulario de acceso (Java GUI Programming) a travs de NetBeans IDE o cmo usar JPassword? Vamos a utilizar un campo de texto para obtener el nombre de usuario y un campo de contrasea para obtener la contrasea.

Mtodo de primera
PASO-1 En primer lugar el diseo de su forma mediante la colocacin de los componentes necesarios, es decir etiqueta, campo de texto campo de contrasea, y un botn para realizar la accin.

Aqu, he utilizado un panel con borde con ttulo para hacer que el diseo se vea mejor. PASO-2 Haga doble clic en la opcin 'Conectar' botn o clic con el botn derecho Eventos Accion actionPerformed PASO 3 En la sesin En la accin del botn realiza evento, escriba el siguiente fragmento de cdigo
String user = jTextField1.getText (); Cadena pwd = new String (jPasswordField1.getPassword ()); if (user.equals ("nombredeusuario") && pwd.equals("sucontrasea")) Inicio new () setVisible (true).;

Explicacin del cdigo-Vamos a aceptar la contrasea en el campo contrasea y almacenarla en la variable pwd. Del mismo modo, vamos a guardar el nombre de usuario en la variable de usuario. Ahora, podemos comparar el nombre de usuario y la contrasea que ha recibido el nombre de usuario y contrasea para jugar con el comando if.

Ahora bien, si el nombre de usuario y la contrasea es correcta su pgina de inicio (formulario Java) puede ser visible o puede realizar ninguna otra accin. Si slo hay pocos IDs es decir, slo unas pocas combinaciones de nombre de usuario y contrasea que puede utilizar si-else-if pero si los identificadores son ms en nmero que usted tiene que mantener una base de datos de nombres de usuario y su contrasea correspondiente. En este caso se puede utilizar un DBMS por ejemplo-MySQL. Despus de que usted tiene que crear una conexin entre su base de datos y la aplicacin Java.

Mtodo 2 (Uso de Java Database Connectivity)


PASO-1 Igual que el anterior. PASO-2 Add 'MySQL JDBC Driver' Biblioteca en su proyecto (clic derecho sobre el icono del proyecto Propiedades Bibliotecas Agregar biblioteca MySQL JDBC Driver) PASO 3 En su paquete y antes de la clase escriba los siguientes cdigos en la ficha fuente.
importacin java.sql *.; importar javax.swing.JOptionPane;

PASO 3 Ahora en el evento actionPerformed el botn Entrar


String sql = "select * from nombre_tabla"; try { Class.forName ("com.mysql.jdbc.Driver"); Conexin con = (Connection) / * Como estamos creando una conexin en un equipo local que vamos a escribir la URL como jdbc: mysql :/ / localhost: 3306 * / Declaracin stmt = con.createStatement (); ResultSet rs = stmt.executeQuery (sql); } catch (Exception e) { JOptionPane.showMessageDialog (this, e.getMessage ()); }

PASO 4 Ahora tenemos que coincidir con nuestras entradas de nombre de usuario y la contrasea con la de la base de datos. Vamos a utilizar bucle mientras que para este propsito. Escriba los siguientes cdigos en la lnea de ResultSet rs = stmt.executeQuery (SQL), y antes de la '}'
String user = jTextField1.getText (); Cadena pwd = new String (jPasswordField1.getPassword ());

while (rs.next ()) { Cadena uname = rs.getString ("Usuario"); / / Nombre de usuario es el nombre Coloumn en la tabla de base de datos Cadena password = rs.getString ("Password"); if ((user.equals (uname)) && (pwd.equals (contrasea))) Inicio new () setVisible (true).;

} El bucle se ejecutar el nmero de veces igual al total de filas en la tabla. El formulario de inicio se abrir cuando la combinacin correcta de nombre de usuario y contrasea se encuentra.

Consejos sobre Entrar forma 1) Siempre hay posibilidades de que un usuario introduce una contrasea
incorrecta y la combinacin de nombre de usuario, en ese caso, debera mostrar un mensaje al usuario con respecto a la misma. Se puede utilizar un JOptionPane para este propsito. -Para una primera Mtodo Usted puede poner un else para mostrar este mensaje de error.
else { JOptionPane.showMessageDialog (this, "Nombre de usuario o contrasea son incorrectos!"); }

b-Para el Mtodo segundo


Hay tal vez de otros mtodos, pero pens que ste era el ms simple. Antes de que el bucle while comienza declarar una variable de tipo entero y se inicializa con el valor 0 y ms tarde en el circuito podemos aumentar su valor si un partido de derecha se encuentra. Aqu est el cdigo completo que he usado.
int tmp = 0; while (rs.next ()) { Cadena uname = rs.getString ("Usuario"); Cadena password = rs.getString ("Password"); if ((user.equals (uname)) && (pwd.equals (contrasea))) { Inicio new () setVisible (true).; tmp + +; } } if (tmp == 0) { JOptionPane.showMessageDialog (null, "nombre de usuario y

contrasea no en base de datos"); }

2) Si va a abrir una nueva forma despus de un inicio de sesin tiene xito,


habr dos formas en la pantalla como el formulario de inicio de sesin no se cerrar. As que para cerrar el formulario de inicio de sesin slo escribirdispose (), por debajo de la casa nueva lnea () setVisible (true);.Esto cerrar la forma actual (es decir, inicio de sesin) y habr un solo formulario en la pantalla.

3) Las propiedades importantes para el campo Contrasea.


Mtodo setBackground setFont Descripcin Ejemplo Establece el color de fondo del jPasswordField1.setBackground (nuevo campo de contrasea. java.awt.Color (255, 255, 204)); Establece el estilo de fuente y jPasswordField1.setFont (nuevo tamao para el texto del campo java.awt.Font ("Times New Roman", 1, de contrasea. 12)); El estado habilitado de component.True si est activado y false (Boolean) jPasswordField1.setEnabled (false);

setEnabled

setEchoChar

Este mtodo permite determinar el carcter que se jPasswordField1.setEchoChar ('*'); reemplace el texto en pantalla.