Problemas com login

3 respostas
D

ola voces podem me dizer aonde eu estou errando nos códigos???
pois quando clico no botão acessar quando não coloco nada ele loga se tiver alguma coisa aparece erro de login alguém pode me ajudar e me falar o que falta obrigada!!

Classe conexao

import java.sql.*;
public class Conexao {
public static void main(String args[]) {
String url = "jdbc:postgresql:TurmaN40";
Connection con;
String query = "select * from LoginUser";
Statement stmt;
try {
Class.forName("org.postgresql.Driver");
} catch(java.lang.ClassNotFoundException e) {
System.err.print("ClassNotFoundException: ");
System.err.println(e.getMessage());
}
try {
con = DriverManager.getConnection(url,"postgres", "postgres");
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
ResultSetMetaData rsmd = rs.getMetaData();
//int numberOfColumns = rsmd.getColumnCount();
//int rowCount = 1;
//System.out.println("Cadastro de Livros");
while (rs.next()) {
//System.out.println("Livro " + rowCount);
//for (int i = 1; i <= numberOfColumns; i++) {
//System.out.print(" Campo " + i + ": ");
//System.out.println(rs.getString(i));
//}
//System.out.println("");
//rowCount++;
}
stmt.close();
con.close();
} catch(SQLException ex) {
System.err.print("SQLException: ");
System.err.println(ex.getMessage());
}
}
}

classe efetuar login

[google]import java.awt.*;
import java.awt.event.*;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.swing.*;

import java.sql.*;
//import controle.Utilitarios;

// Ctrl+Shift+F => Formata o código
// Ctrl+A e Ctrl+i => Formata a seleção

public class EfetuarLogin extends JFrame {
	Conexao con = new Conexao();
	private JLabel rotulo1, rotulo2;
	private JTextField caixa1, caixa2;
	private JButton botao1;
	
	private static EntityManagerFactory fabricaDeEntidades = null;

	private static EntityManager gerenciador = null;

	public EfetuarLogin(EntityManagerFactory fabricaDeEntidades2, EntityManager gerenciador2) {
		super("Login");
		Container tela = getContentPane();

		tela.setLayout(null);
		fabricaDeEntidades=fabricaDeEntidades2;
		gerenciador=gerenciador2;

		rotulo1 = new JLabel("Usuário:");
		rotulo2 = new JLabel("Senha:");
	
		caixa1 = new JTextField();
		caixa2 = new JTextField();

		botao1 = new JButton("Acessar");
	
		// coluna, linha, largura, altura
		rotulo1.setBounds(21, 19, 47, 20);
		caixa1.setBounds(78, 19, 90, 20);

		botao1.setBounds(70,80, 100, 20);

		rotulo2.setBounds(21, 50, 100, 20);
		caixa2.setBounds(78, 50, 90, 20);
		
		tela.add(rotulo1);
		tela.add(caixa1);

		tela.add(rotulo2);
		tela.add(caixa2);

		tela.add(botao1);
	
		
		botao1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				// Persistir dados
				// inclusão de um novo registro
				Conexao con = new Conexao();
				if (caixa1.getText().equals("") || caixa2.getText().equals("")) {
					
					String sql = "select * from LoginUser where usuario like'"+
						caixa1.getText()+"' and senha like'"+
						caixa2.getText()+"'";
					JOptionPane.showMessageDialog(null,"usuário logado com sucesso");
			          new Menu(fabricaDeEntidades,gerenciador);
				}
				else{
					JOptionPane.showMessageDialog(null, "erro ao efetuar login");
				}
				
			}
		});

		

		// setSize(largura, altura);
		setSize(250, 150);
		setVisible(true);
		setLocationRelativeTo(null);
	}

	public static void main(String[] args) {

		fabricaDeEntidades = Persistence
				.createEntityManagerFactory("TurmaN40PostgreSQL");

		gerenciador = fabricaDeEntidades.createEntityManager();

		EfetuarLogin app = new EfetuarLogin(fabricaDeEntidades, gerenciador);
		app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

	}
}[/google]

3 Respostas

Leandro_M

Não seria porque você não colocou uma condição para os dados que virão da base de dados?

Conexao con = new Conexao();   
                if (caixa1.getText().equals("") || caixa2.getText().equals("")) {   
                       
                    String sql = "select * from LoginUser where usuario like'"+   
                        caixa1.getText()+"' and senha like'"+   
                        caixa2.getText()+"'";   
                    JOptionPane.showMessageDialog(null,"usuário logado com sucesso");   
                      new Menu(fabricaDeEntidades,gerenciador);   
                }   
                else{   
                    JOptionPane.showMessageDialog(null, "erro ao efetuar login");   
                }
Conexao con = new Conexao();
                //Faz o select na base dados
                if (caixa1.getText().equals(selec.getSenh()) || caixa2.getText().equals(selec.getUsuario)) {   
                    JOptionPane.showMessageDialog(null,"usuário logado com sucesso");   
                      new Menu(fabricaDeEntidades,gerenciador);   
                }   
                else{   
                    JOptionPane.showMessageDialog(null, "erro ao efetuar login");   
                }
Tenta aí
D

eu tentei fazer isso mais nao deu certo nao deu erro

botao1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				// Persistir dados
				// inclusão de um novo registro
				Conexao con = new Conexao();   
	               //Faz o select na base dados   
	               if (caixa1.getText().equals(select.getSenha()) || caixa2.getText().equals(select.getUsuario())) {     
	                   JOptionPane.showMessageDialog(null,"usuário logado com sucesso");     
	                     new Menu(fabricaDeEntidades,gerenciador);     
	               }     
	               else{     
	                   JOptionPane.showMessageDialog(null, "erro ao efetuar login");     
	               } 
				
			}
		});
D
meus getters e setter são esses 
eu tinha importado o pacote...e deu erro mesmo assim

package Modelo;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.swing.text.PasswordView;

import com.sun.java.swing.plaf.nimbus.PasswordFieldPainter;

import sun.security.util.Password;


@Entity
public class LoginUser {
@Id
	private String usuario;
	
	private String senha;

	public String getUsuario() {
		return usuario;
	}

	public void setUsuario(String usuario) {
		this.usuario = usuario;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String string) {
		this.senha = string;
	}
}
Criado 25 de julho de 2011
Ultima resposta 25 de jul. de 2011
Respostas 3
Participantes 2