首页 > 解决方案 > 如何将日历类型转换为字符串?

问题描述

我试图将日历类型转换为字符串以在我的 jsp 页面中显示日期

这是我的 servlet 代码,我将字符串转换为日历类型

private Evaluation EvaluationMapper(HttpServletRequest request)
{

        try {
            Evaluation eval = new Evaluation();
            eval.setNumero(Integer.parseInt(request.getParameter("numero")));
            eval.setNom(request.getParameter("nom"));
            eval.setPrenom(request.getParameter("prenom"));
            eval.setTelephone(request.getParameter("telephone"));
            eval.setCourriel(request.getParameter("courriel"));
            eval.setSexe(request.getParameter("sexe").charAt(0));
            eval.setNote(request.getParameter("note"));

            DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.setTime(df.parse(request.getParameter("date")));
            eval.setDateEvaluation(cal);

            eval.setCommentaire(request.getParameter("commentaires"));

            return eval;
        } catch (ParseException ex) {
            throw new IllegalArgumentException("Erreur..??");
        }


}

这是我的jsp页面的代码,但它没有显示日期

 <% for(Evaluation e:(List<Evaluation>)request.getAttribute("ListeEvaluation")){%>
           <tr><td><%= e.getNumero()%> </td>
               <td><%= e.getNom() %> </td>
               <td><%= e.getPrenom()%> </td>
               <td><%= e.getTelephone()%> </td>
               <td><%= e.getCourriel()%> </td>
               <td><%= e.getSexe()%> </td>
               <td><%= e.getNote()%> </td>
               <td><%= e.getDateEvaluation()%> </td>
               <td><%= e.getCommentaire()%> </td>
               <td>
                   <a href="/Labo2/SupprimerServlet?numero=<%= e.getNumero()%>" >Supprimer</a> |
                   <a href="/Labo2/ModifierServlet?numero=<%= e.getNumero()%>" >Modifier</a>
               </td>
           </tr>               
           <%}%>

这是我的清单评价

private static  List<Evaluation> ListeEvaluation = new ArrayList<Evaluation>();

public Evaluation evaluation = new Evaluation();


//set method
 public void setListeEvaluation(List value){this.ListeEvaluation = value;}

 //getmethod
 public List<Evaluation> getListeEvaluation(){return this.ListeEvaluation;}

那么我怎么不能在字符串中转换 getDateEvaluation 呢?

标签: jspjave

解决方案


如果"ListeEvaluation"要从requestJSP 中获取属性值,如下所示:

<% for(Evaluation e:(List<Evaluation>)request.getAttribute("ListeEvaluation")){%>

"ListeEvaluation"你应该在你的servlet中设置属性:

List<Evaluation> listeEvaluation = new ArrayList<>();
for (...) {
    Evaluation evaluation = new Evaluation();
    evaluation.setNumero(...);
    evaluation.setNom(...);
    ...
    listeEvaluation.add(evaluation);
}
request.setAttribute("ListeEvaluation", listeEvaluation);

推荐阅读