Imprime isto:
(AQUI PEGA DO MYSQL)
Usuário 1 com as perms R
---------------------------
Usuário 2 com as perms log.fab
---------------------------
(AQUI SÓ IMPRIME OS DADOS QUE FORAM SALVOS ACIMA)
Usuário 1
Permissão log.fab
---------------------------
Usuário 2
Permissão log.fab
A classe Usuário não possui nenhuma variável static.
Alguém consegue ajudar? Obrigado!
O código em si é este, mas não acho q vá ajudar em algo…
Pois o programa está pegando os dados corretamente do MySQL, só não está salvando corretamente. Está salvando sempre a última permissão salva do último usuário, como se estivesse static as permissões do usuário… Mas não está
//Carregar usuáriosps=con.prepareStatement("SELECT * FROM Usuarios");ps.executeQuery();rs=ps.getResultSet();if(rs!=null){while(rs.next()){intID=rs.getInt("userID");Stringnome=rs.getString("Nome");Stringsenha=rs.getString("Senha");perms.clear();if(rs.getString("Permissoes")!=null){Strings=rs.getString("Permissoes");if(s.contains(";")){for(StringP:s.split(";")){perms.add(gerPermissoes.getPerm(P));}}elseif(!s.equals("")){perms.add(gerPermissoes.getPerm(s));}}Usuariou=newUsuario(ID,nome,senha,perms);Stringperm="";for(Permissaop:u.getPerms()){perm=perm+" "+p.getNomeDB();}System.out.println("Usuário "+u.getNome()+" com as perms "+perm);System.out.println("---------------------------");gerUsuarios.add(u);}}}catch(SQLExceptionex){System.out.println("Erro ao se conectar o MySQL: "+ex.getMessage());}finally{sql.closeConnection(con,ps,rs);}newEstatisticas();PDV=newprincipalPDV();for(Usuariou:gerUsuarios.getAllUsers()){System.out.println("Usuário "+u.getNome());for(Permissaop:u.getPerms()){System.out.println("Permissão "+p.getNomeDB());}System.out.println("---------------------------");}
M
MarcosGuilherme1 like
Rafael, poste a classe Permissão, por favor.
E se possivel, sempre utilize CleanCode, seu código fica mais legível. CFTV - CleanCode
darlan_machado1 like
Então posta o código que abre o arquivo, escreve nele e salva.
rafael_pinke
Peço desculpas pelo jeito que postei o código, segundo post que faço rs rs.
Agradeço pela ajuda, tanto a sua quanto a do @darlan_machado.
O erro estava na classe de gerenciamento das permissões, em que a ArrayList que salvava as permissões estava static. Eu não tinha visto isto antes por causa que estava focando procurar o erro na parte onde estava salvando os usuários, que postei o código, e na classe Permissão, onde salva a permissão em si, seus dados e nome.
Enfim. Removi o static e coloquei na Main um gerUsuarios gerUsuarios = new gerUsuarios(); e resolveu o problema.
Agradeço a todos, tenham um ótimo dia!
M
MarcosGuilherme
Tranquilo, é apenas uma dica, até mesmo pra você, caso revise o código um tempo depois, pode perder tempo de manutenção tentando entender um método