jspにarraylistを表示するのに問題があります。それぞれの人が繰り返しを行うごとにすべてが1行に表示されます。 私はここ列(電話番号、ファックス、phone2の、電子メール)JSPでarraylistを正しく表示しているSpring MVC
を持つテーブルがあるが、私のDAO機能は次のとおりです。
@Override
public ArrayList<String> moyenCom(Authentication auth) {
String login=auth.getName();
List list;
List listres = null;
ArrayList<String> array1=new ArrayList<String>();
//ArrayList<ArrayList<String>> array=new ArrayList<ArrayList<String>>();
SessionFactory factory=new Configuration().configure().buildSessionFactory();
Session session=factory.openSession();
session.beginTransaction();
//Your operation
String sql1="select r.id_responsable from WEBCARE.PERSONNE p,WEBCARE.RESPONSABLE r,WBB_CLU.ABONNE_COMPTE ac,WBB_CLU.COMPTE_CLU c where p.id=r.id_responsable and r.id_abonne=ac.id_abonne and c.id_compte=ac.id_compte and c.login=:x";
SQLQuery query1 = session.createSQLQuery(sql1);
query1.setParameter("x",login);
query1.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
session.getTransaction().commit();
list=query1.list();
for(int i=0;i<list.size();i++){
String res =list.get(i).toString();
String[] parts = res.split("=");
String part2 = parts[1];
System.out.println("id du responsable est"+res);
System.out.println("id du responsable spliteeee est "+part2);
session.beginTransaction();
String sql="select mc.information from WEBCARE.MOYEN_COMMUNICATION mc,WEBCARE.PERSONNE p where p.id=mc.id_categorie and mc.id_categorie=:part2 and mc.categorie=1";
SQLQuery query = session.createSQLQuery(sql);
query.setParameter("part2",part2);
query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
session.getTransaction().commit();
listres=query.list();
for(int i1=0;i1<listres.size();i1++){
String resu =listres.get(i1).toString();
System.out.println("info "+resu);
array1.add(resu);
}
}
System.out.println(array1);
return array1;
}
私のコントローラ:
@RequestMapping("/fichets")
public String fichets(Model model,Authentication auth){
Authentication authen = SecurityContextHolder.getContext().getAuthentication();
String name = authen.getName(); //get logged in username
model.addAttribute("moycoms",metier.moyenCom(auth));
return "InfoAbonneTS";
}
と私のjspページ:
<c:forEach items="${resps}" var="resp">
<tr>
<td id="date">${resp.nom} ${resp.prenom}</td>
<td>${resp.poste}</td>
<td>${resp.password}</td>
<c:forEach items="${moycoms}" var="moycom">
<td>${moycom}</td>
</c:forEach>
</tr>
</tbody>
</c:forEach>
この関数は、すべての4つの情報を含むフィールド情報を返しますすべての列にそれぞれ表示する必要があります。 のArrayListが返されます。
{information=}, {information=01999999999}, {information=0199999333}, {[email protected]}, {information=00 }, {information=0622355114}, {information=0588888888}, {[email protected]}, {information=00 }, {information=0111111111}, {information=0666666666}, {[email protected]}
ので、最初の4つの情報は、すべての列、2番目の4つの同じことで、それぞれを表示する必要がある...この例では、私は3名を持っています。 これを正しく表示できません。それは地図のリストのように見えるのデータを見てみると
resps is for displaying the first 3 columns
あなたの返信のための@Anand Muley、y es respには4つの列を表示するためのIDが含まれていますが、jspで配列リストの表示を確認するにはどうしたらいいですか?statでコードを試してみました。 arraylistの4つのグループのそれぞれが1行に表示されます。 –
クエリ結果を文字列に変換するコードを確認しました。 'String resu = listres.get(i1).toString(); System.out.println( "info" + resu); array1.add(RESU); ' に変更し、それを: 'マップRESUは=(マップ)listres.get(I1)。 array1.add(resu); ' –
はい私はクエリの行を削除しました。結果をマップに変換しました。今変換する必要はありません。問題はjsp @Anand Muleyで表示されます –