Как отформатировать строку с помощью MessageFormat в JSTL

Строка получается из переменной ENV следующими кодами:

<span><%=(String)System.getenv("NEW_COPYRIGHT")%></span>

Переменная ENV похожа на Copyright &copy; {0} XXX.

Как заменить {0} текущим годом и отобразить Copyright © 2018 XXX в файле jsp?

Спасибо


person L.L    schedule 11.04.2018    source источник


Ответы (1)


Для этого нет стандартного тега jstl. Мы можем использовать другой способ сделать это.

а. Используйте fn:replace, чтобы сделать это:

<c:set var="env" value="Copyright &copy; {0} XXX"/>
<c:out value="${fn:repalce(env,'{0}','2018')}"/> <!-- the year can also be access via a variable -->

б. Определите свой собственный тег, чтобы отформатировать его с помощью java.text.MessageFormat, более подробную информацию можно найти по адресу Понимание и создание пользовательских тегов JSP

person lucumt    schedule 12.04.2018