我想以法语格式翻译日期(美国)。我不知道该怎么做?我有3个文件。我看到有些使用JavaScript ???我想在JSP中做到这一点吗?在我的数据库中是变量" naissance_eleve"在varchar
中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
<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>
我不确定如何将其转换为JSP。我确实记得JSP可以包含Java。此Java代码的样本创建了两个地方的简单构造,即美国和法国,解析和格式,并将日期和输出。
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月
Sun Dec 03 07:15:57 CST 2017
2017-Décembre-03
Sun 12月3日00:00:00 CST 2017
在最后一个中没有时间出现,因为格式未覆盖时被删除。
我的猜测是
<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>