Читать «Java 7 (Наиболее полное руководство)» онлайн - страница 446
Ильдар Шаукатович Хабибуллин
Например, тег
<fmt:formatNumber var="formattedAmount" pattern="0.00" value="${amount}" />
запишет в переменную formattedAmount типа String количество amount с двумя цифрами в дробной части, а тег
<fmt:formatDate var="ruDate" pattern="dd.MM.yyyy" value="${today}" />
запишет в переменную ruDate типа String дату today в виде 08.12.2007.
Теги
<fmt:parseNumber var="n" pattern="0.00" value="${amount}" />
<fmt:formatDate var="d" pattern="dd.MM.yyyy" value="${today}" />
выполняют обратное преобразование строки символов, заданной атрибутом value, в объекты типа Number и Date соответственно, записанные в переменные n и d по шаблону pattern.
Эти теги реализованы классами DecimalFormat и SimpleDateFormat из пакета java.text и преобразуют данные по правилам этих классов, которые можно посмотреть в документации Java SE.
Библиотека sql
Четвертая библиотека, sql, описываемая тегом
<%@ taglib uri="" prefix="sql" %>
содержит теги связи и работы с базами данных: <sql:setDataSource>, <sql:query>, <sql: update> и <sql:transaction>. Их действие построено на JDBC и работа с ними очень похожа на работу с базами данных через JDBC, что можно понять из следующего примера:
<sql:setDataSource driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:ORCL" user="scott" password="tiger"
/>
<sql:query var="depts" > select * from DEPT </sql:query>
<sql:transaction>
<sql:update>
insert into DEPT values(50, 'XXX', 'YYY')
</sql:update>
</sql:transaction>
Библиотека fn
Пятая библиотека, fn, содержит функции для обработки строк. Она описывается тегом
<%@ taglib uri="" prefix="fn" %>
и содержит теги <fn:substring>, <fn:substringBefore>, <fn:substringAfter>, <fn:indexOf>, <fn:toUpperCase> <fn:toLowerCase>, <fn:startsWith>, <fn:endsWith>, <fn:contains>,
<fn:containsIgnoreCase>, <fn:trim>, <fn:replace>, <fn:split>, <fn:join>, <fn:escapeXml>. Вы,
несомненно, узнаете в названиях этих тегов привычные методы обработки строк, которые мы изучили в
Кроме тегов обработки строк, библиотека fn содержит функцию <fn:length>, вычисляющую как длину строки, так и длину коллекции, переданной ей в качестве аргумента. Например:
<c:if test="${fn:length(param.username) > 0}" >
<%@include file="response.jsp" %>
</c:if>
Frameworks
Приступая к разработке Web-приложения, каждая команда решает вопрос о его архитектуре. Чаще всего ответ находится в схеме MVC (Model-View-Controller)