2017-12-03 2 views
0

프랑스어 (미국) 형식으로 번역하고 싶습니다. 어떻게 해야할지 모르겠군요? 나는 3 개의 파일이있다. 나는 몇몇이 자바 스크립트를 사용하는 것을 본다 ??? 내가 JSP로하고 싶다. 내 데이터베이스에서 변수 "naissance_eleve은"VARCHAR에날짜를 프랑스어 (jsp)로 변환

<table border="1" width="40%"> 
     <thead> 
     <tr> 
    <th>Id</th><th>Nom</th> 
     <th>Prenom</th><th>Date Naissance</th><th>Editer</th><th>Supprimer</th> 
     </tr> 
     </thead> 
    <c:forEach items="${list}" var="eleve"> 
     <tr><td>${eleve.getPk_eleve()}</td><td>${eleve.getNom_eleve()}</td> 
      <td>${eleve.getPrenom_eleve()}</td><td>${eleve.getNaissance_eleve()}</td> 

      <td><a href="edit_form_ecole.jsp?getPk_eleve=${eleve.getPk_eleve()}">Editer</a></td> 
      <td><a href="delete_ecole.jsp?pk_eleve=${eleve.getPk_eleve()}">Supprimer</a></td></tr> 



    </c:forEach> 
</table> 

eleve_form.html

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 

</head> 
<body> 


<a href="vueEleve.jsp">Apercu des infos</a><br/> 


<form action="ajoutEleve.jsp" method="post"> 
    <table border="1" width="40%"> 
     <tr><td>Nom:</td><td><input type="text" name="nom_eleve"/></td></tr> 
     <tr><td>Prenom</td><td><input type="text" name="prenom_eleve"/></td></tr> 
     <tr><td>Date Naissance</td><td><input type="date" name="naissance_eleve"/></td></tr> 
     <tr><td colspan="2"><input type="submit" value="Ajouter"/></td></tr> 
    </table> 
</form> 

</body> 
</html> 

eleve_form.html

<!DOCTYPE html> 
<html> 
<head> 

    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 

</head> 
<body> 


</body> 
</html> 

<%@ page pageEncoding="UTF-8" %> 
<%@page import="com.java.bd.EleveBD"%> 
<jsp:useBean id="u" class="com.java.classe.Eleve"></jsp:useBean> 
<jsp:setProperty property="*" name="u"/> 

<% 
    int i= EleveBD.add(u); 
    if(i>0){ 
     response.sendRedirect("success.jsp"); 
    }else{ 
     response.sendRedirect("erreur.jsp"); 
    } 
%> 

vueEleve.jsp입니다

+0

"naissance_eleve"일 것이다. 이를 변경할 수 없다면 "naissance_eleve"는 항상 '2017-12-3'등과 같이 ISO 형식으로되어 있다고 가정합니다. 그런 다음 변환을 위해 java.text.SimpleDateFormat을 사용합니다. –

+0

@HeikoJakubzik 사실, 표준 [ISO 8601] (https://en.wikipedia.org/wiki/ISO_8601) 형식은 앞에 0이 붙어 있으므로'2017-12-03'을 사용하십시오. –

답변

0

정확히 이것을 JSP로 변환하는 방법을 잘 모르겠습니다. 나는 JSP가 자바를 포함 할 수 있다는 것을 기억한다. 이 Java 코드 샘플은 US와 France 두 로케일의 SimpleDateFormat을 작성하여 날짜를 구문 분석하고 형식을 지정하고 결과를 출력합니다.

public static void main(String[] args) 
{ 

    Date d = new Date(); 
    SimpleDateFormat sdf_us = new SimpleDateFormat("yyyy-MMMM-dd",Locale.US); 
    SimpleDateFormat sdf_fr = new SimpleDateFormat("yyyy-MMMM-dd",Locale.FRANCE); 
    String output = sdf_us.format(d); 
    System.out.println(output); 
    System.out.println(d); 
    try 
    { 
    d = sdf_us.parse(output); 
    String output_fr = sdf_fr.format(d); 
    d = sdf_fr.parse(output_fr); 
    System.out.println(output_fr); 
    System.out.println(d); 
    } 
    catch (ParseException e) 
    { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 
} 

출력은

2017 년 12 월-03

일 ~ 12 월입니다 03 중부 표준시 07시 15분 57초 2017

2017-décembre-03

일 12월 03 00 : 00 : 00 CST 2017

형식 d 그것을 감추지 마십시오.

내 생각 엔 아마도 더 나은 데이터베이스에 입력 한 날짜이어야한다

<tr><td>Date Naissance</td><td><input type="date" name="naissance_eleve" value=" 
<%  
    SimpleDateFormat sdf_fr = new SimpleDateFormat("yyyy-MMMM-dd",Locale.FRANCE); 
    String output = sdf_fr.format(naissance_eleve); 
    out.print(output); 

%>"/></td></tr> 
+0

이 답변은 java.time 클래스로 대체 된 오래된 오래된 레거시 날짜 - 시간 클래스를 사용하여 좋지 않습니다. –