2017-04-20 4 views
0

Je souhaite envoyer plusieurs valeurs de données qui ont été extraites de la base de données vers une autre servlet ou jsp.comment envoyer plusieurs valeurs (attributs) d'une servlet à une autre servlet ou JSP dans J2EE

Voici mon code

PreparedStatement st= conn.prepareStatement("select name from users where uname=? and pword=?"); 

    st.setString(1, uname); 
    st.setString(2, pword); 

    ResultSet rs= st.executeQuery(); 

    if(rs.next()) 
    { 
     if(uname.equals(uname) && pword.equals(pword)) 
     { 
      request.setAttribute("name", rs.getString("name")); 
      request.setAttribute("uname", uname); 

      HttpSession ss= request.getSession(); 
      ss.setAttribute("name",rs.getString("name")); 
      ss.setAttribute("uname",rs.getString("uname")); 
      response.sendRedirect("Dash.jsp"); 
     } 
    } 

Je veux envoyer la fois le nom ainsi que uname (nom d'utilisateur) à un autre fichier jsp appelé "Dash.jsp". Mais ça ne fonctionne pas. si je commente une du code ci-dessous:

ss.setAttribute("name",rs.getString("name")); 
ss.setAttribute("uname",uname)); 

le servlet passe les données à Dash.jsp

J'ai aussi essayé d'utiliser RequestDispatcher en appliquant le code suivant:

request.setAttribute("name", rs.getString("name"); 
request.setAttribute("uname",uname); 
String destination = "Dash.jsp"; 
RequestDispatcher rd = 
getServletContext().getRequestDispatcher(destination); 
rd.forward(request, response); 

Même si je donne destination = "/ WEB-INF/pages/Dash.jsp". alors aussi il ne va pas à la page Dash.jsp.

Quelqu'un peut-il me dire comment envoyer plusieurs valeurs ou données dans ce nom de cas, uname d'une servlet ou jsp à une autre.

+0

Sur quel serveur/version le déployez-vous? –

Répondre

0

Lorsque vous stockez quelque chose en tant qu'attribut de requête ou attribut de session, vous pouvez y accéder en jsp avec Expression Language.

Supposons que vous avez enregistré votre nom et uname comme attribut de session comme ci-dessous

ss.setAttribute("name",rs.getString("name")); 
ss.setAttribute("uname",rs.getString("uname")); 

le vous pouvez y accéder à l'intérieur jsp comme

<p>${name}</p> 
<p>${uname}</p> 

je l'ai mentionné balise p par exemple, vous pouvez les utiliser à l'intérieur jsp où vous voulez en utilisant $ {Nom d'attribut}

Espérons que cela aide, Post if you Tu as besoin d'autre chose.