How to use jQuery + Ajax with Java EE

2

I'm creating a connection to the bank in Java like this:

try{
        Class.forName("org.postgresql.Driver");
        Connection con = DriverManager.getConnection("jdbc:postgresql://localhost/projeto","postgres","754753"); 
        if(request.getParameter("user") != null)
        {
            //caminho para chegar até a tabela no BD
            Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
            ResultSet rs = st.executeQuery("select * from login where log_usuario = '"+
                    request.getParameter("user")+"' and log_senha = '"+
                    request.getParameter("pass")+"'");

            if(rs.next())
                //response.sendRedirect("paginas/home.jsp");
            else
                out.println("Não Logado");
        }

    }
    catch(ClassNotFoundException ClassError){
        out.println("Driver não encontrado "+ClassError);
    }
    catch(SQLException SQLError){
        out.println("Erro de conexão com o banco de dados");
    }

I want to send to ajax for it to validate with $.ajax({}); .

Within success I want to have 3 conditions that would be:

  • enter your username and password
  • Invalid user or password
  • Login done, please wait ...
  • More or less like this:

    $('form').submit(function(){
                var login = $(this).serialize();
                $.ajax({
                    url:
                    data:
                    type:
                    success: function(resposta){
                        if(resposta == 'erroempty'){
                            $('.msg').empty().hmtl('<p class="aviso">Informe seu usuário e senha!</p>').fadeIn('slow');
                        }else if(resposta == 'errosenha'){
                            $('.msg').empty().hmtl('<p class="erro">Erro ao logar! Dados não conferem!</p>').fadeIn('slow');
                        }else if(resposta == 'success'){
                            $('.msg').empty().hmtl('<p class="sucesso">Login efetuado, aguarde...</p>').fadeIn('slow');
                        }
    
                    },
                    beforeSend: function(){
                        $('.loginbox h1 img').fadeIn('fast');  
                    },
                    complete: function(){
                        $('.loginbox h1 img').fadeOut('fast');  
                    }
    
    
                });
    
                return false;
    
            });
    
    How do I get Java to pass the 3 information (errorempty, error, and success) and what would I put in url , data and type ?

        
    asked by anonymous 15.02.2015 / 19:20

    1 answer

    1

    So, your problem is conceptual, you need to understand how this requests mechanism works, you could use JSON to return various parameters on the page.

    Example of using JSON in your case:

    {
      "erroempty": {
        "Msg": "Informe seu usuário e senha!"
      },
      "errosenha": {
        "Msg": "Erro ao logar! Dados não conferem!"
      },
      "success": {
        "Msg": "Login efetuado, aguarde..."
      }
    }
    

    Configuring the request

     url:  destino da request
        data: Conjuntos de parâmetros que vão ser enviados via get/post
        type: tipo da request get/post
    

    In your case!

    url: Nome da classe principal onde está localizando seu primeiro exemplo
    data:login
    type: 'POST
    

    Look at the documentation for Jquery Ajax

        
    15.02.2015 / 20:13