Login gráfico em java
Publicado por Diogo Souza da Silva 26/03/2007
[ Hits: 10.867 ]
Homepage: www.manfiesto.blog.br
Um simples login gráfico com swing em java. Checa a senha com um banco de dados mysql.
/* Simples login, por Diogo Souza da Silva */ import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class Login extends JFrame{ /* Declarando variaveis */ static Login janela ; public JTextField usuario ; public JPasswordField password ; public String userid, erro, asenha ; public Login() { /* Constroi a tela de LOGIN com gridBaglayout */ Container contantPane = getContentPane(); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); contantPane.setLayout(gridbag); getContentPane().setBackground(Color.white); JLabel intro = new JLabel("Bem vindo ao JContas! - www.manifesto.s9k.net"); c.gridwidth = 2; c.weightx = 0.5; c.gridx = 0; c.gridy = 0; gridbag.setConstraints(intro, c); getContentPane().add(intro); JLabel user = new JLabel("Usuario:"); c.gridwidth = 1; c.gridx = 0; c.gridy = 2; gridbag.setConstraints(user, c); getContentPane().add(user); JLabel senha = new JLabel("Senha:"); c.gridwidth = 1; c.gridx = 0; c.gridy = 3; gridbag.setConstraints(senha, c); getContentPane().add(senha); usuario = new JTextField(15); c.gridwidth = 1; c.gridx = 1; c.gridy = 2; gridbag.setConstraints(usuario, c); getContentPane().add(usuario); password = new JPasswordField(15); c.gridwidth = 1; c.gridx = 1; c.gridy = 3; gridbag.setConstraints(password, c); getContentPane().add(password); JButton entra = new JButton("Entrar"); c.gridwidth = 1; c.gridx = 0; c.gridy = 4; gridbag.setConstraints(entra, c); getContentPane().add(entra); /* Funcao de entrar */ entra.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { validar(); }}); } public void validar() { /* Confere usuario e senha com um mysql */ Connection con; Statement stmt; ResultSet rs; String usu = new String(usuario.getText()); String senhas = new String(password.getPassword()); /* Pega a senha de um mysql */ try { Class.forName("com.mysql.jdbc.Driver"); System.out.println("Driver OK"); try { String url = "jdbc:mysql://localhost/data_base"; con = DriverManager.getConnection(url, "root", ""); stmt = con.createStatement(); try { rs = stmt.executeQuery("SELECT senha FROM usuarios where login = '"+ usu +"' "); rs.next(); asenha = rs.getString("senha"); } catch (SQLException exp) { erro = erro+"Erro na requisicao."; System.out.println("SQLException: " + exp.getMessage()); System.out.println("SQLState: " + exp.getSQLState()); System.out.println("VendorError: " + exp.getErrorCode()); exp.printStackTrace(); } } catch (SQLException exp) { erro = erro+"Conexao falha, verifique sua conexao com a internet."; System.out.println("SQLException: " + exp.getMessage()); System.out.println("SQLState: " + exp.getSQLState()); System.out.println("VendorError: " + exp.getErrorCode()); exp.printStackTrace(); } } catch(java.lang.ClassNotFoundException ext) { erro = "Problemas com o driver de conexao."; System.err.print("ClassNotFoundException: "); System.err.println(ext.getMessage()); } /* Se devidamente autorizado */ if ( senhas.equals(asenha) ) { /* Faz o que precisar */ } else { JOptionPane.showMessageDialog(null,"Acesso negado."+erro,"Atencao", JOptionPane.WARNING_MESSAGE); } } public static void main(String[] args) { /* Chama o programa */ janela = new Login() ; janela.setTitle("Login"); janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); janela.pack(); janela.setVisible(true); } }
Código para validar CPF e CNPJ otimizado
Avaliação de expressões matemáticas
Um classe que facilita a leitura de dados do teclahdo
Código para validar CPF e CNPJ otimizado
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta