Bom vou por meu código para ficar melhor.
as partes principais da classe usuario nessa minha duvida
classe usuarios.java
public String getPerfil() {
return this.perfil;
}
public boolean autenticaUsuario(String _usuario, String _senha) {
dds.getDadosMaquina();
String senhaCrip = null;
try{
senhaCrip = hsh.toPassword(_senha);
} catch (NoSuchAlgorithmException e) {
erro.msgErro(e.getMessage(), "Usuarios.AutenticaUsuario.Criptografia", "Erro ao criptografar dados!\n");
}
boolean valida = false;
try {
conn.connectOra();
Statement sql = conn.con.createStatement();
ResultSet rset = sql.executeQuery("SELECT ID_USUARIO, SENHA, ATIVO, ID_LISTA_PERFIL,LOGIN_ACESSO"+
" FROM TAB_USUARIOS WHERE LOGIN_ACESSO = '"+ _usuario.toUpperCase() +"'AND SENHA= '"+ _senha+ "'");
while (rset.next()) {
this.login = rset.getString("ID_USUARIO");
this.ativo = rset.getString("ATIVO");
this.perfil = rset.getString("ID_LISTA_PERFIL");
System.out.println(getPerfil());
valida = true;
}
if (getRetornaLogin() == null && getRetornaSenha() == null) {
valida = false;
JOptionPane.showMessageDialog(null, "Usuário e/ou senha inválidos! Tente novamente.", "Dados inválidos.", JOptionPane.ERROR_MESSAGE);
}
if (getRetornaAtivo().contains("N")) {
JOptionPane.showMessageDialog(null, "Usuário '" + _usuario.toUpperCase() + "' está bloqueado!\nFavor entrar em contato com o administrador do sistema.", "USU�RIO BLOQUEADO", JOptionPane.ERROR_MESSAGE);
valida = false;
}
if (valida == true) {
sql.execute("INSERT INTO TAB_BANCO_ACESSO (ID_ACESSO, ID_TIPO_PROJETO, USUARIO, SENHA, STRING_CONEXAO, BANCO_DE_DADOS) VALUES (SEQ_ID_ACESSO.NEXTVAL, 4, '" + _usuario.toUpperCase() + "','" + _senha.toUpperCase()+ "','192.168.0.38','DBFPORTALWS')");
}
sql.close();
conn.con.close();
} catch (SQLException e) {
erro.msgErro(e.getMessage(), "Usuarios.autenticaUsuario", "Erro SQL:\nVerifique se seu usuário já está logado em outra máquina\n");
valida = false;
}
return valida;
}
login.java
public class Login extends javax.swing.JFrame {
Data dt = new Data();
ConexaoOra conn = new ConexaoOra();
Usuarios usu = new Usuarios();
DadosSistema dds = new DadosSistema();
MenuPrincipal mnp = new MenuPrincipal();
public Login() {
initComponents();
setTitle("Seja bem vindo! Digite seus dados para acessar o sistema.");
}
// mtos códigos aqui
private void btOkActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btOkActionPerformed
try {
String usuario = txtLogin.getText();
String senha = txtSenha.getText();
String db = null;
/* Scanner input = new Scanner(new File("Data_Entry\dataEntryConection.imb"));
db = input.next();
db="O";*/
if (usu.autenticaUsuario(txtLogin.getText(),txtSenha.getText()) != false) {
mnp.setVisible(true);
this.dispose();
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
MenuPrincipal.java
//inicio
public class MenuPrincipal extends javax.swing.JFrame implements ActionListener {
DadosSistema dds = new DadosSistema();
LogIO logio = new LogIO();
Eventos eve = new Eventos();
Data dt = new Data();
Usuarios usu = new Usuarios();
ConexaoOra conn = new ConexaoOra();
private javax.swing.Timer timer;
Erro erro = new Erro();
private String glUltimaData;
private String glUltimaHora;
//Quando o projeto é aberto essa variável recebem o cod do cliente
//para que na tela de digitação ele saiba qual é o projeto
private static String codClienteProjeto;
private static String nomeProjeto;
public MenuPrincipal() {
try {
initComponents();
setLocation(0, 0);
dds.getVersao(conn.toString());
disparaRelogio();
setTitulo("");
} catch (Exception e) {
Logger.getLogger(MenuPrincipal.class.getName());
}
}
public void setTitulo(String _modulo) {
setTitle(dds.getSistema() + " Versão " + dds.getVersao() + " | " + dds.getDataAtualizacao() + " | " + _modulo);
}
public void personalizaAcesso() {
if (txtPerfil.getText().equals("ADMINISTRADOR") == true) {
DesktopPane.setVisible(true);
} else if (txtPerfil.getText().equals("SUPERVISOR") == true) {
DesktopPane.setVisible(true);
} else if (txtPerfil.getText().equals("PADRÃ?O") == true) {
DesktopPane.setVisible(false);
}
}
// Aqui que ele deve pegar o usuario, porém la em cima ja está instanciado um novo, como o código ja veio pronto, que estou confuso.
//GEN-FIRST:event_formWindowOpened
try {
eve.getConectou();
txtData.setText((String) dt.getData());
txtPerfil.setText(usu.getPerfil());
System.out.println("Principal:" + usu.getPerfil());
txtUsuario.setText(usu.getUsuCodigo());
if(usu.getGrupoProjetosAtivo().equals("S")){
txtGrupoProjeto.setText(usu.getGrupoProjetos());
}else{
txtGrupoProjeto.setText(usu.getGrupoProjetos());
txtGrupoProjeto.setForeground(Color.red);
}
personalizaAcesso();
} catch (Exception e) {
Logger.getLogger(MenuPrincipal.class.getName());
}
}
Digamos ai está a parte principal