Ir para conteúdo
Fórum Script Brasil
  • 0

Dificuldade com Lógica (Java + SQL)


danilosfc

Pergunta

Boa tarde!

Estou fazendo um trabalho de recuperação e estou com dificuldades em um ponto crucial do projeto, e vou tentar explicar no que estou pedindo ajuda, dando uma visão geral do programa:

Tenho que elaborar uma aplicação em java que utilize um banco de dados para configurar um menu de usuário.

Eu estou usando o banco de dados que vem junto com o Netbeans, o Derby.

Criei as seguintes tabelas:

Usuários

id

Nome

Senha

Ativo

menuId

Menus

id

Nome

padrão

Opcoes

id

Nome

Aplicacao

Ativo

Menus_Opcoes

id

menuID

opcaoID

O usuário ADMIN poderá criar usuários e configurar um menu para cada usuário.

Até onde eu fiz o meu admin consegue criar menus, opções e usuários normalmente.

Quando um usuário fizer o login na aplicação a aplicação deve apresentar o menu de opçoes de acordo com a configuração definida pelo ADMIN.

É ai que está a dificuldade!

Ao criar uma opção no menu o ADMIN :

a) definirá qual a aplicação que estará associada. Exemplo : Opção do menu "Bloco de Notas" abrirá o "Notepad.exe"

B) definir a chamada a outro menu já existente.

Eu gravei o caminho do .exe do que eu quero abrir em uma String no campo Aplicacão na tabela Opções do Banco de Dados

Bom, tem outros detalhes que ainda não fiz, mas estou enroscado nisso. Como abrir esse menu novo com o usuario novo.

Como dividi em várias classes, vou colocar a parte que entro com usuario e senha:

Menu

1. public class MenuLoginUI {

2.

3. private UsuarioDAO usuarioDAO;

4. private UsuarioDTO usuarioDTO;

5.

6. public void entradaUsuario() throws SQLException {

7. usuarioDAO = new UsuarioDAO();

8. usuarioDTO = new UsuarioDTO();

9. this.logar();

10. usuarioDAO.conferir(usuarioDTO);

11. }

12.

13. public void logar() {

14. System.out.println("---- LOGIN ----");

15. System.out.println("Entre com o nome: ");

16. usuarioDTO.setNomeUsuario(Keyboard.readString());

17. System.out.println("Entre com a senha: ");

18. usuarioDTO.setSenhaUsuario(Keyboard.readString());

19. System.out.println("-------------------------");

20. }

21. }

public class MenuLoginUI { private UsuarioDAO usuarioDAO; private UsuarioDTO usuarioDTO; public void entradaUsuario() throws SQLException { usuarioDAO = new UsuarioDAO(); usuarioDTO = new UsuarioDTO(); this.logar(); usuarioDAO.conferir(usuarioDTO); } public void logar() { System.out.println("---- LOGIN ----"); System.out.println("Entre com o nome: "); usuarioDTO.setNomeUsuario(Keyboard.readString()); System.out.println("Entre com a senha: "); usuarioDTO.setSenhaUsuario(Keyboard.readString()); System.out.println("-------------------------"); } }

E o método Conferir()

1. public void conferir(UsuarioDTO usuario) throws SQLException {

2. if (usuario.getNomeUsuario().equals("admin") && usuario.getSenhaUsuario().equals("admin")) {

3. principal.menuPrincipal();

4. } else {

5. String sql = "select nome, senha from usuarios where nome=? and senha=? and ativo='1'";

6. PreparedStatement argumento = database.getConnection().prepareStatement(sql);

7. argumento.setString(1, usuario.getNomeUsuario());

8. argumento.setString(2, usuario.getSenhaUsuario());

9.

10. ResultSet registro = argumento.executeQuery();

11. if (registro.next()) {

12. principal.menuPrincipal();

13. } else {

14. System.out.println("-----USUÁRIO NÃO AUTORIZADO-----");

15. login.entradaUsuario();

16. }

17. }

18. }

LEMBRANDO QUE ESTOU USANDO APENAS TEXTO E NADA DE GRÁFICO!

Agradeço desde já qualquer ajuda!!!!!!

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...