JSTL LocalDateTime format
Je veux formater mon Java 8 LocalDateTime
objet dans "dd.MM.aaaa" modèle. Est-il de la bibliothèque de format? J'ai essayé le code ci-dessous mais j'ai reçu exception de conversion.
<fmt:parseDate value="${date}" pattern="yyyy-MM-dd" var="parsedDate" type="date" />
Est-il une balise ou un convertisseur pour LocalDateTime
classe dans JSTL?
- Voir aussi: github.com/sargue/java-time-jsptags
Vous devez vous connecter pour publier un commentaire.
En fait j'ai eu le même problème et finit par bifurquer l'original Joda Time jsp balises pour créer Java 8 java.le temps de balises JSP.
Avec la bibliothèque de votre exemple serait quelque chose comme ceci:
Vérifier le référentiel pour les instructions d'installation: https://github.com/sargue/java-time-jsptags
Il n'existe pas dans les 14 ans de la JSTL.
Votre meilleur pari est de créer un personnalisé EL de la fonction. D'abord créer une méthode utilitaire.
Puis créer un
/WEB-INF/functions.tld
dans lequel vous vous inscrivez à l'utilité de la méthode d'un EL de la fonction:Enfin l'utiliser comme ci-dessous:
Étendre, si nécessaire, la méthode de prendre un
Locale
argument.Non, Il n'existe pas pour LocalDateTime.
Toutefois, vous pouvez utiliser:
Voici ma solution (je suis à l'aide de Spring MVC).
Dans le contrôleur ajouter un SimpleDateFormat avec le LocalDateTime modèle comme un attribut du modèle:
Ensuite l'utiliser dans la page JSP pour analyser les LocalDateTime et d'obtenir un java.util.Date:
Maintenant, vous pouvez analyser avec JSTL.
Je suggérerais à l'aide de
java.time.format.DateTimeFormatter
.D'abord l'importer aux JSP
<%@ page import="java.time.format.DateTimeFormatter" %>
, puis le format de la variable${localDateTime.format( DateTimeFormatter.ofPattern("dd.MM.yyyy"))}
.Étant nouveau développement java, je suis intéressé si cette approche est acceptable en termes de "bonnes pratiques".