2010-12-13 7 views
0

J'utilise une servlet pour obtenir des valeurs de la base de données et je veux imprimer cela en jsp. Mon problème est que les valeurs sont imprimées comme usera userb userc. Je veux la sortie à être commeImpression des valeurs une par une en jsp

usera 
userb 
userc 

S'il vous plaît aidez-moi à le faire. Voici ce que j'ai essayé

<% 
String Users=request.getParameter("Users"); 
String User[]=Users.trim().split(" "); 
for(int i=0;i<User.length;i++){ 
    out.println(User[i]); 
} 
%> 
+2

Je vous recommande d'utiliser les balises JSTL au lieu de JSP Scriptlets. –

Répondre

0

Puisque vous produisez html, vous devez ajouter <br /> après chaque utilisateur:

out.println(User[i] + "<br />"); 

Notez qu'il est conseillé de ne pas utiliser le code java dans les pages JSP. Ecrivez votre code java dans une servlet, placez les résultats en tant qu'attributs de requête, puis transférez-les dans un JSP, où vous pouvez afficher le résultat en utilisant JSTL.

0
<% 
String Users=request.getParameter("Users"); 
String User[]=Users.trim().split(" "); 
for(int i=0;i<User.length;i++){ 
    out.println(User[i]+"<br/>"); 
} 
%> 

Je vous suggère d'aller JSTL

Voici comment il devrait être:

Perform code java à servlet et demande avant dans un fichier jsp

Servlet:

String Users=request.getParameter("Users"); 
String User[]=Users.trim().split(" "); 
request.setAttribute("name", User); 

dans ce fichier jsp

<c:forEach var = "userName" items = "${name}"> 
<tr> 
<font color="#000080"><td>${userName}</td></font> 
</tr> 
</c:forEach> 

Voir aussi

+0

Bozho vous a battu à elle. –

+0

avec 20 secondes :) – Bozho

+0

Je ne recommanderais pas ** d'utiliser la balise ''. Utilisez plutôt CSS pour cela. –

Questions connexes