• Nenhum resultado encontrado

Introdução às bibliotecas JSTL (JSP Standard Tag Libraries) Felipe de Almeida Leme Michael Nascimento Santos

N/A
N/A
Protected

Academic year: 2021

Share "Introdução às bibliotecas JSTL (JSP Standard Tag Libraries) Felipe de Almeida Leme Michael Nascimento Santos"

Copied!
99
0
0

Texto

(1)

    

Introdução às bibliotecas JSTL

(JSP Standard Tag Libraries)

Felipe de Almeida Leme

(2)

                         !  " ! #$ % & ! ' % () * + ,-. % / 0 12 '3 45 687 % ( (, #9 & ! : ,  % 9 & ! ! ; ) ! $ # <  7 # , ! ( = , >, ? ,  % 9 & ! ! ); ! $ # <  7 # ,  % ! ; + ! $ # % $ / ' , @ # A % $  # , 6 B *  ' ! $ + # A # ! & 5 $% $ , ( (! $ A % $ = , >, CED C F ! @ ! , 9 ! 9 ' %  9 * @ + % $ B <  # % $ ) , $ , , G $ *9 + ' %  9 * @ + % $ ! 9H #  9 + $ * + % $ = , >, ) , $ , , B ! ! & G B ' % @ , I % $ , & % $ $ ! * @ , $ & , $ ! > #9 + , = , >, 4 , , J #  ! 5 , @ ! 9 + $ ,  + !  % = , >, K  ! LM M ? 4 ! ( I $% #  & # > # & * , @ & % = '5

(3)

 N OQP RS T U V S WP OQX TY Z\[ ] S Y Z\[ W ^ _ `_ N O W Z Ta N b ced f gih j k l m l h n o j pqj rs s hj m p j k t h u rv r wo x r k m p j s yEz w{ y z | ced f gih j k l m l h n h } g ps ~ p fh f k  h v h x p ~hj m p j u w€ € z  h s } j p n r j p q r f lƒ‚ r„ … p n p c pd u rv jr‡† h ˆ ~ p f ˆ ‰Šv h x q hj r x ~h x r s p n hj r„ … p n r ‹ rv rQŒ x l ˆ k g p f k j l } d l n p j ~j r r r u rv r  rq r‚ l fh  h s } j p l f n l v l n d r x n p u g o h €  ~hj k n r u cŽ Œ w  | r f p ˆ n h h  ~hj l ‘ f’ l r ’ ps u rv r“ ” ’ ps k h ’ f p x pq l r ˆ u w€ € o r x h ˆ k j r f k h f p u rv r • fh w  ”

(4)

˜™ š › š œƒ ž Ÿ  ¡ ¢ ž £8¤ ¥ ž¦ §¤ £8¨ © ¦ ¤ ª ¤ Ÿ« ž¬ ž § ­ ®¯ °‡± ­ ®¯ ²  ¦ ž³

<%@ page import="java.sql.*,java.text" %>

<%try {

Connection con= DriverManager.getConnection(...);

...

ResultSet rs = st.executeQuery("SELECT a.field1, a.field2...

FROM Tabela a");

%>

<table>

<tr>

<td>Usuario</td><td>Data de cadastro</td>....

</tr>

<% DateFormat df = new SimpleDateFormat("dd/MM/yyyy");

while (rs.next()) {%>

<tr>

<td><%= rs.getString(1) %></td>

(5)

˜™ š › š ´ƒµ ¶ ·¸ ¹ º ¶ »8¼ ½ ¶¾ ¿¼ »8À Á ¾ ¼  ¼ ·Ã ¶Ä ¶ ¿ Å ÆÇ ÈÉ Å ÆÇ Ê¸ ¾ ¶ Ë ¼ Ì · Í Â È Î Å ÆÇ ÏEÐ Ï Ñ Å Æ ËÒ Î Å ÆÇ Ï Ð ÓÔ Ó Ð Õ Ñ

(6)

<%@ page import="java.sql.*,java.text" %>

<%try {

Connection con= DriverManager.getConnection(...);

...

ResultSet rs = st.executeQuery("SELECT a.field1, a.field2...

FROM Tabela a");

%>

<table>

<tr>

<td>Usuario</td><td>Data de cadastro</td>....

</tr>

<% DateFormat df = new SimpleDateFormat("dd/MM/yyyy");

while (rs.next()) {%>

<tr>

<td><%= rs.getString(1) %></td>

<td><%= df.format(rs.getTimestamp(1)) %></td>...

</tr>

(7)

ÙÚ Û Ü Ú ÝÞ Ûß à Úá â ã â ä Ú ä Þ Ù Þ ã8å á â ä Ú ä Þ æç Ú Ü â á â ä Ú ä Þ è Þ Û Ü ç Ú ã âƒé Úê ë å ì Þ ß íÚ Û Ü Ú ÝÞ Û ß î Ú âƒï Ú ã Þ Ý â ð â ã â ä Ú ä Þ ì â ñ â á ò ã ä Ú ä Þ ä Þ óÚ Û ò Ü Þ ê Û ë å î Ú âƒï å Þ á Û Ú ôß ò ã Ú óÞ Û Ü å õ ç Þ òß å ö Ú ò Ü ç Ú Ü Ú óÞ Û Ü å ä Þ Þ ïá Þê ÷ Þ ß

(8)

ø û ý þ ý                                                                           !" # $ %& ' $)( *+ ,-. .0/ / /21 3 & 4 3 !5 ! 1 67 8 1 % ' * , '9 : $0; ( * " * =<  " - & 49 > 7? ? 9 6 $ 7? 5 ! ' ( * 67? *@ ! ! A 7 & ' 69 ( *   ( '9B & 9 4 1 " 9 C ' $ % & 9 D@ * 4 *E  < * <  " - B & 9 'F 5 ! ' ( * ' 4 * < AG HG >I ! 1 : $ 9 # @ JLK ! 1 : $ 9 # @ M 1 1 1 NO PQ I ! % 9 # ! !  . " - B & 9 'F <  ! %# 9 <  '<  @ < R 4 & ! ' $ 7  . @ <  @ < S ! ! @ 9 6! @ ! 4 '7  . @ < 1 1 1 1  . '<  " -# 7 7 , O 9 4 & # 4 5 ! ' ( *   ( ' 4  < * # $ ? 9 ( * # * <  '<  @ <   ( #$ ? 9 1 " 9 A ' $ ? " D JE  <  . @ <  @ <  " -: 7 ' 8! 5 ! # & 9 ( *   ( #$ ? 9 1 " 9 I $ 89 4 ! 8, D JE =< * . <  . @ < 1 1 1  . '< 1 1 1 1  . ! % # 9 < . " 49

(9)

ø û ý þ ý TU V W U XY VZ [ Y \] ^_ Z Y `U _ U a b ^ Y V W _ Y c de f X ^ g U hU Y ij [k l V cU `Z m \ U nY V W ^ o _ Y mZ ^ p U c f \ f e U e Y e Y nU V m W Y V a b ^ q ^ n W _ U W U nY V W ^ e Y Y r Yc a s Y Z t V W Y X_ U a b ^ c ^ n tu l Z u Y Z hU V W U XY V Z v ^ n ` \ Y r f e U e Y VU f n ` \ Y nY V W U a b ^ v de f X ^ e U j U X w x yz t c ^ n ` \ Y rU u Y ` \ ^{ nY V W u Y Z c _ f ` W ^ _ h f U j k u | c_ f ` \ Y W Z VY Yc Z Z } _ f ^Z c ^ n Yc _ W U ~ _ Y  €  V c f U j Y n ` ^ e Y e Y Z Y V h ^ \ h f nY V W ^ z ^ m cU Y Z W _ m W m_ U ` _ ‚„ƒ c ^ V Z W _ m … e U `U _ U W U _ Y ~ U Z † } Z f cU Z ‡ f f \ W b

(10)

‰ Š Š ŒŽ  ’‘  “  ” • “ – — ˜ ™ š › œ   “ – ›Ÿž   – ˜ ™  —‘ – —• ¡ œ–  – › ¢ ™ œ “ › • ¢ ˜ – › › • › – ‘ £ ™ ˜ ™ –  • › ¤‘ • ¥ – ¢ ™ ˜ ™ “ – ¡  ” • › •    ˜   ™ ¡•  “  ” • ¦ §¨ ›Ÿ©

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

<%@ taglib uri="http://java.sun.com/jstl/sql" prefix="sql" %>

<%@ taglib uri="http://java.sun.com/jstl/sql" prefix="fmt" %>

<sql:query var="usuarios" dataSource="${dataSource}">

SELECT a.field1, a.field2... FROM Tabela a

</sql:query>

<table>

<tr><td>Usuario</td><td>Data de cadastro</td>...</tr>

<c:forEach var="linha" items="${usuarios.rows}">

<tr>

<td><c:out value="${linha.nome}"/></td>

<td><f:formatDate value="${linha.dataCadastro}" /></td>...

</tr>

</c:forEach>

</table>

(11)

‰ Š Š ª« ¬ ­ « ®¯ ¬° ± « ² ³ ´ ³ µ « µ ¯ µ ¯ ³¶ · ´ ¯ ¶ ¯ ¬ ­ « ¸ ¹Žº »’¼ ·½ ¯ ° ° ³ º ¬ ¾ « ¬ ®¿ « ®¯ À » ¾ Á  ¯ ¶ ·º µ ¯ µ ¯ ° ¯ ¬Ã º ´ à ³ ¶ ¯ ¬ ­ º » ° ­ ½ ¿ ­ ¿ ½ « Ä Å ° ³ ²« ·½ º ¬ ­ « Æ « µ ½ ¹ º µ « · ´ « ­ « Ç º ½ ¶ « È É ­ ³ · ´ « ° ³ ¶ · ´ ¯ ¶ ¯ ¬ ­ « ¸ Ê ¯ ° ·º ° ° Ë Ã ¯ ³ ° Ì ¯ ° à « ¬ ­ « ®¯ ¬ ° Ì ¯ ·¯ ¬ µ Í ¬ ² ³ « µ ¯ « µ ¯ ½ Í ¬ ² ³ « « º ·« µ ½ ¹ º Î « à « Ï ¯ « ¬° µ ¯ ·½ º ·½ ³ ¯ µ « µ ¯ ° Ð ¹Žº ·¯ ½ ¶ ³ ­ ¯ ³ ¬Ã º ²« ¸ ¹ º µ ¯ ¶ Ñ ­ º µ º ° » ¾ Ò µ µ ­

(12)

ÓÕÔ Ö ×Ø Ù Ö Û’Ü ÝÞß à à áâ ã äå ãæ çå æ ß è Û ä é ê á ëì á â í ß îå à ï ß í å æ à ð â Þß ñ â Þ òå í óô ä õö ä ÷ å æ ì á ë ø å ì á ï å í â Þ à è ÷ ä ø é ùúû

(13)

üþý    ý      

<%=((Usuario)request.getAttribute("usuario")).getGrupo().getNome()%>

<c:out value="${usuario.grupo.nome}" />

ü     ü    ü        ÿ ý             

page,

request, session, application

(14)

        ! "#

out, set, remove, catch

$

% ! &  ' " ! ( )  * + !   , +   *   -    !  ! . &   *     /  & *  -  ! &   #

if, choose, when, otherwise

$

0 ! - "   ! .  -   ! . &    - & *  -  ! & " .  ,   & !  1 2  % ! &  ' " ! ( )  * 34 5  #

import, url, redirect, param

$

/   !  "  & 6 87  .     !   *   -  ! &  !  ! 34 5  9 ' ! .  !  : ! - . ' . 7  *    !  ' ;   ! !   <  !    .  "  :  -! . ' &  :   . >= ! .  ! ? ! "@  A

(15)

B C D EF G HJI K

forEach, forTokens

L B C D EF M N EO I PO I Q D G R D SD T N M D U N V D D E W C D SD S C EX C X EF S8Y O I W Z D O N P D W C I S U D [ F \F]

<% Object[] arr = ..;

for (int i = 0; i < arr.length; i++) { %>

...

<%= arr[i] %>

<% } %>

<% Collection c = ..;

for (Iterator i = c.iterator(); i.hasNext();) { %>

...

<%= i.next() %>

<% } %>

(16)

^J_ ` a bc dfe g hi j k l jm no jlp m k p p qm h g _ l p ` r

<c:forEach var="item" items="${colecao}">

...

<c:out value="${item}" />

</c:forEach>

(17)

st u

w

xy

z

{

setLocale, bundle, setBundle, message,

param, requestEncoding

| }~> € ‚  ƒ„… … ‚„ z†  ƒ„ z† „ †  ‡ € † € „  ˆ‰… € ‰ ˆ‰ ‚ ‰ Š € Š ‰ ‚ „ ‹ ‡ † € ‰  †  Œ … Š ‰  ‰… ‚ Ž    ‰ {

timeZone, setTimeZone, formatNumber,

parseNumber, formatDate, parseDate

|

 ‰… ‚ Ž  ‚ z ‘ ‚„ … ‰ †8’ €  Ž  † „ “ ‰…  † €„  ˆ‰… € ‰ ˆ‰ ‚ ‰ Š € Š‰ ‚ „ ‹ ‡ † € ‰  †  Œ … Š ‰ „ ” ‰  €„ • ‰… ‚ ˆ‰ z • Š ƒ … Œ—– „ ˜

(18)

™š

›

œ

query, update, transaction, setDataSource,

param, dateParam

 žŸ   ¡ ¢ £ Ÿ ¡¤ ¥   ¦ § ¦ ¨© ¦   ª« ¡ ¬ ¦ £ ¦ ™ «   ­ ªŸ ® Ÿ ¯ « ­ ° « ± ±Ÿ ª £ ¢ « ± ® ² Ÿ ¦ ¨ ¢>³ ¦   ª« ± ® ­ ¨ £ ¦ ® ´ ªŸ ® ®  ¦  Ÿ ® ­ ¨ £ ¦ µ « ® µ Ÿ ª« ± ® ­ ¨ £ ¦ ® ¶ ¦ ª ¢ ¨ ¡Ÿ ± £ Ÿ ² Ÿ ¦ ¨ ¢>³ ¦   ¢ ± ®Ÿ  · ¸ Ÿ ®8¹ ¦ £ ­ ¦ ¨ ¢>³ ¦ · ¸ Ÿ ® Ÿ   Ÿ ¡« · ¸ Ÿ ® µ Ÿ µ ¦ µ « ® ² Ÿ ¦ ¨ ¢>³ ¦   º »   ¢ ¦ ® « ¼Ÿ  ¦ · ¸ Ÿ ® µ Ÿ ¶ «  ¡ ¦ £   ¦ ± ® ¦ ª ¢ « ± ¦ ¨

(19)

½J¾

¿ À

Á

parse, out, set

Â

ÃÄ Å ÆÇ È É Ä Ê Ë ÃÌ Í À Î ¾¿ ÊÄ Ï Æ ÊÇ É À Ï8Ð ÀÑ Æ Ò Æ Å Í ¾ ÄÓ É ¾ ¿ Í À À É À Ê À Å Ô ¾ Ï8Ð Ä Ô ¿ Æ Ò È Ô ¾ Ï À Ô Õ8Ö À × ¾ È Í À Î Æ Å Æ Å Í ¾ Ä¿Ó Æ Ø Ó À Æ Ï Ù É ÈÑ ¾ Á

if, choose, when, otherwise, forEach

Â

Ú À ¿ Ê Æ Ô À Ê ÊÄ Å Æ Ç È É Ä¿ ¾ Ë Ã Ì À ÀÑ ÀÕ È Ô Ä¿ ¾ È Å Û ¾ Ä Ü Ý À Ï Õ ¾ Ê Ò Ä Ï À À Ê ÀÑ Ç¿ À Ï Ï Ý Ï Ë Ú Ä Ô Þ ß ¿ Ä Å Ï Î ¾ ¿ ÊÄ Ü Û ¾ à Ë áÌ ß Á

transform, param

Â Ù Ä Õ Æ É Æ Ô Ä Ê ¾ È Ï¾ Í À Ë áÌ ß

(20)

â â åçæ èé êJë ì ë í î ï ðñ òï óô õ ö÷ ô ó ø ï ù ï úï ð ìúï î ë ô ì ï ô î ì ûü ý ï ô õ ö÷ ô ô ï ð ô ì ú ûþ ÿ ï î ô ö ú ì ûþ î  ì ï ï     ë íü ë ð ï  úï ü ý ï ô ù ï ú ó ð þ û ÿ ë ü  ó úë ô ó ó õ ö÷ òô ï ô ì ú ûþ î ô  û ð û î ë ü  ó ù ï òô ó ù ë ô î ë ô ÷ ï ì ð û î î ï ù  ë  ÿ û ø ô      ë íü ë ð ï  úï ü ý ï ô ù ï ú ó ð þ û ÿ ë ü  ó úë ô ó ó õ ö÷ òô ï î ë ô í  ó þ ìï ð û î û ù ë ô

(21)

                                              !          #"      "             $ %  &    &  &   &                 &   &      '       & ( )      &     ( *  + ,- !           "   /.       0  $ 1 *           &   &    ( *                . 32    4 ! 5    " 5           " 4 6 0        $ %  &    &   ' 7   &         8           2  2    2             4

(22)

9 :; < < @ A @ B A ; C/D E F G FH I J/K F L IM I F E F N J F K I G IO PK M I M Q I M I G R ST U V W XY Z [\ X X ]_^ X `ba cd e c Zf ^ Zg ] d [ W Z h i J M PD H j E I N H D R ST U k I G F l K J mon l D M L I l Fp M q r M l FK s L J M DP H j E I N H D R St u v w k I Gx n F N x n IK N n p KF q y Fz J N J l F Fz M I M D F D m { I l D M I G | l D L D M } PD J M L J M P IH M F n M D L I M z K J P N I l M R St ~ M D L F z D H E IH  € D R F E F  I FH M P KF F Fz M I M KF PK D PK J I L F L I M r O I G P N D‚ ƒ „… a

<%= usuario.getNome() %>

†‡ a

${usuario.nome}

(23)

ŠŒ‹  Ž ‘ ’“” • • – ” • — ” ˜ ™ š ™ › œ — œ • ’ “ žŸ  ‘ ’“” • • – ” • ’ — ” š ” • “ ¡ ¢ ¡ œ › ” ¢ œ — œ •¤£   ” š ’ ˜ ¥

“${usuario.nome} ${usuario.sobreNome}”

¦ — ” ¢ › ™ § ™ ¡ œ —  “” • “” • ˜o¨ ™ —  • ¡ š¥ © ª« ¬ ­ © ® ¬¯ ° ® ®¯± ²³ ² ´

page

µ

request

µ

session

²¶

aplication

· © ª« ¬ ­ © ® ¬¯ ° ® © ¬ ¯ ¬ ¸ ¬ ¹ ¬ ° ª ° ® ° ® º ª» ² ¸ ¼ ® º ²¯ ¬½ ³ ¹ ¾ ± ¬ º ²¯ ´ ½ ª ¬ ²« ³ « ± ® ® ° ¿ÁÀ ± ¬ ª ·   ¢Ã ” “ • Ä  œÅ ›  š Æ › ™ ¡ œ •” ¢ › “” › ™ ’ • Ç ˜ È ™ ÉËÊ Ì Ì Í ÏÑÐ Ò_Ó ÕËÖ Ò Ï

(24)

Ù ÚŒÛ Ü Ý Þ â Ú Û Ü

Nome

Tipo

Descrição

Equivalente JSP

Exemplo

pageContext

PageContext

ã äåæ çéè ê ë æ ì ë íîðï äåæ ç èê ë æ ì ë ñ

pageScope

Map

íîðï äåæ òéó èïæ ô õ ö õä÷ ø è ñ

requestScope

Map

íî ÷æ æ ù õ ö ë ò ó èïæ ô õ ö õä÷ ø è ñ

sessionScope

Map

íî ö æ ö ö ø èê ò ó èïæ ô õ ö õä÷ ø è ñ

applicationScope Map

íî äï ï ú ø ó ä ë ø èê òéó èïæ ô õ ö õä÷ ø è ñ

param

Map

ûüýþ üÿ  ü   û ü ü û   ü íîðï ä÷ ä  ê èæ  ö õä÷ ø è   ñ

paramValues

Map

ûüýþ üÿ  ü   û ü ü û    þ üÿ   ü íîðï ä÷ ä   è ë è     ñ

header

Map

ûüýþ üÿ  ü  ü   ü û   ü íî  æ ä  æ ÷   è ö ë   ñ

headerValues

Map

ûüýþ üÿ  ü  ü   ü û    þ üÿ   ü íî  æ ä  æ ÷  ä ú õ æ ö   è ö ë     ô ñ

cookies

Map

ûüýþ üÿ  ü   üÿ  íî ó è è  ø æ ô õ ú ë ø è  ó æ ö öè ñ

initParam

Map

íî ø ê ø ë ã ä÷ ä ô ä ø ú ò õ ï è÷ ë æ ñ !" ü   ü   ü #   $ %    

JSP

& û  ! þ ÿ   $ %      üÿ ' $

page

$ ü   ü #  (   & û  ! þ ü   ü*)  & +, -.  , & û  ! þ ÿ   ûüýþ  ÿ  / 0  üÿ ' $

request

$ ü   ü #  (   & û  ! þ ü   ü*) 1 , 23 , .4 -.   , & û  ! þ ÿ  ÿ üÿ ÿ 0  üÿ ' $

session

$ ü   ü #  (   & û  ! þ ü   ü*) 1 , 23 , .4 -.   , & û  ! þ ÿ    $  ' / 0  üÿ ' $

application

$ ü   ü #  (   & û  ! þ ü   ü*) 1 , 23 , .4 -.  ,    ûüÿ  ÿ $ û 5 ü ûÿ 

request

   ûüÿ   6  $  ÿ  ÿ $ û 5 ü ûÿ 

request

   ûüÿ  ÿ  û  ! þ ÿ 

header

HTTP

   ûüÿ   6  $  ÿ  ÿ  û  ! þ ÿ 

header

HTTP

Cookies



request

  û 5 ü ûÿ  ü    '   87  / 0   $ %     $ ü   ü #  ü . ü û9  ü   ü #   ü :     û ü ü û   ü

(25)

;< = >< ;? ; @ ;? ? > @ ;? ? >< ? CED FEG H FEI D G JLK D I K MN J D KM G O P QRS T TU V*W X U W X Y S Z Q Z S T Z S U [\ S ] U T ^_ P QRS T TU Q `*a Z Y RS T Z S R U b S c d S T eEf H K Mg N h i F jlk K F G m N G g N H K jlk K F G npo K hI q D G

${param[“nomeUsuario”]}

// pagina.jsp?nomeUsuario=fulano

${paramValues[“autor”][0]}

// palestra.jsp?autor=Felipe&autor=Michael

${usuario.endereco.rua}

// <%= usuario.getEndereco().getRua() %>

${usuarios[5].endereco['rua']}

// <%= usuarios[5].getEndereco().getRua() %>

(26)

r vw xt y vt xw zE{ | } ~  } |E€ ‚

+ - * / div % mod

ƒ…„ †ˆ‡ ‰ Š…‹ Œ‡ Š…

== eq != ne < lt > gt <= le >= ge

Ž ‘ |E€ ‚

&& and || or ! not empty

’”“ • –˜— ™ š‚ › œ  ›{ › œLž } ž { ~ |EŸ ›{ ‚ ž š ~  › ¡ { l  ›¢ |   š

null

£p¤ ž  ~ ¡ ‚

${ projeto.numeroHoras * tabelas['projeto'].fatorRisco }

${(x gt 0) && (x < 10)}

${ !(empty usuario.endereco) }

(27)

¥¦ §¦ ¨ § ¦ ¦ ¥ ª « ¥¦ ¬

1)[ ] .

2)( )

3)-(unário) not ! empty

4)* / div % mod

5)+ - (binário)

6)< > <= >= lt gt le ge

7)== != eq ne

8)&& and

9)|| or

(28)

­ ­¯ °u± ²³ ¯ ´± µE¶ · ¸E¹ º » ¶ ¼ ½ˆ¾ ¿LÀ ¾ Á  À à ¾ Ä ÅEÆ ¶ à ¶ ÇÀ · à ¾ ¿ À À È ÉÀ ¼ Ê À Ä Ë » º Ⱦ ɾ · ¿ ¸ É ¸ ¾ ·¶ » Ì Ã À Æ ¶ ¼ Ê À Ä ÍÎ Ï Ä

(29)

Ð ÑÒ ÓÔ Ø”Ù ÚÛ Ü ÝˆÞ ßáà â ãä ã å æ ãç è ãé ê ëìé í í îˆï é é ê æ ð é ï ìé í ç åòñ ã ó ï ô õ Ü Ý öá÷ õ à Ú â

value

ø ù ú ûýü þ úÿ þ ú ù ú û  ú  ü

default

ø ù ú û üþ  ü   ü  ú û úÿ þ þ  üþ  ú  ü  ÿ ú ü

value

ÿ ú ù ú  ü ü

null

escapeXML

ø û ú  ü   ü  ú û      ú   ü ÿ  þ ú ú  þ ÿ ÿ    ú  ÿ        ù ÿ þ  ü  þù    ü ÿ   ú û   þ   à Ü à  õ  â  ã ñ ì æ ð ç ñ ï

default

(30)

  " 

#

$% &

')(

<c:out value=”literal”/>

<c:out value=”${usuario.nome}” default=”guest”/>

<c:out value=”${usuario.nome}”>

guest

</c:out>

<c:out value=”” escapeXml=”false”>

Exemplo do uso de <i>escapeXml</i>.

</c:out>

(31)

* +, -. 132 45 6 798 :<; = >@? A BDC ? EF G H EI > ? J K GF GI B L F ? HM E J NI E NI B ? > G >@? > ? J K E O P ? Q E R S T 6 7 U<V T ; = 4

var

W XY Z[ \^] _ ]` a b _ [ c

value

W _ ] c Y` ] d[` ] e ` a fg h \ Y i _ ]` a b _ [ c

scope

W [ dj Y kY l Y kj a Y X] cm \ ] _ ]` a b _ [ c l

page –

_ ] c Y` \ [ n ] g c epo

request

o

session

Y g

aplication

m

target

[

property

q Y f r [ e Y [ ` k Y ` k a [ \^] \^[ l ] Y a X _ s d \^[

var

m t ; 6u ; vw T w = x G Q I B O J Q E

value

(32)

y z } z

~

€ } z

)‚

<c:set var="nome" value="Felipe"/><br>

Variável

nome

: <c:out value=”${nome}”/><br>

<c:set target="${usuario}" property="nome"

value="${nome}"/>

Propriedade

nome

do objeto usuário: &nbsp;

<c:out value=”${usuario.nome}”/><br>

(33)

ƒ Š ‹3Œ Ž  9‘ ’<“ ” •– —˜ ™– š —› ™ › • œ  ™– žŸ – –  ¡ ˜ ¢˜ £ ¤   ¥<¦ ¤ “  ”

var

§ ¨© ª« ¬^­ ® ­¯ ° ± ® « ² ­ ³« ¯ ¯ « ª© ® ° ¬^­

scope

§ « ³´ © µ© ¶ © µ´ ° © ¨­ ²· ¬ ­ ­¯® ° ± ® « ² ¸ “ ¹ “ º» ¤ » ¼ ” ½ ¾ ˜ š ¿ œ ž œÁÀ › Ÿ ˜

(34)

 à Ã

Æ

ÇÈ É Ã Å Ê ÃË

Antes da remoção: <c:out value=”${nome}”/><br>

<c:remove var=”nome”/>

<c:out value=”${nome}” escapeXml=”false”>

Variável <i>nome</i> foi removida do escopo!

</c:out>

(35)

Ì ÍÎ ÍÏ Í Ñ ‹3Œ Ž  9‘ ’<“ ” ÒÓ Ô Õ×Ö Ø Ó Ö ÙÓ ÚÛ Ò ÚÜ Ý9Þ Þ ÒÞ Ø Ø ß à Ó áÞ ÒÞ Ø ÔÞ à Ó Õ Ó â £ ¤   ¥<¦ ¤ “  ”

var

§ ã äå æ ç ã è éê ëì í æ ëî ä éï ð ñ è èò í ëì ë ñ è ì çôó æ î ä ê

page

ï ð õö è å è í è ÷ èå ç ä èø í èù ú ëüû ý ä ò ë î ú ë ò è þ ä ñ è ÿ æ î æ ñ ä ð ä èø í èù ú ë ò èå ç æ ó î ëå ä ñ ä û ¸ “ ¹ “ º» ¤ » ” ¼  Þ ÒÞ  Õ Ù    Ô  Õ Ó â   Ò Ö  Ó  ÚÛ Ò ÚÜ  Ú   Ú Ø Ý Þ ÒÓ Ô Õ Ö ÓØ à Ó  Ô Ú  Ó Õ Ó â

(36)

     

<%-- O seguinte trecho gera exceção, já que a

propriedade NOME não existe na classe usuario

--%>

<c:catch var=”excecao”>

<c:set target="${usuario}" property="NOME"

value="${nome}"/>

</c:catch>

Exceção:&nbsp;

<c:out value=”${excecao}”>nenhuma</c:out>

<br>

(37)

     !#" $&% ' () (* + ,.-/ * /01 / 2 - ,.-3 - 1 (4 - 5 5 ( - () 1 0 ( 5 5 6 / 2 ( , ( 5 , ( 7 /0 8 (0 2 -2 ( 9 0 -: ; ! <&= ; % ' 

test

> ?@ AB ?C C DFE G C ?B H ?C H G I G

var

> J GB K L J ? MN E AO K E P G MQ G B ?O ? R ?B E J G M E B I G ?@ AB ?C C D E

scope

> ?C O E AE N E AO K E P G MQ I G J GB K L J ? M

target

?

property

S E R T ? H E ? AB E AB K ? I G I ? N GE K P J UVC I ?

var

Q W % X % Y[Z ; Z ' \ ]^ /* / - 5 (0 () (* + , -2 / 5 ( - () 1 0 ( 5 5 6 / , ( 5 , ( 7 /0 8 (0 2 -2 ( 9 0

(38)

-_ ` a b c ` d ef g

<c:if test=”${usuario.nome == 'Felipe' ||

usuario.nome == 'Michael'}”>

Permissão ok!<br>

</c:if>

<c:if test=”${usuario.nome == 'Felipe'}”

var=”acesso”>

Permissão ok!<br>

</c:if>

(39)

j kl k m mn op q j kl or p s j kl m t ou n op wx yz { |#} ~& €  ‚ƒ „†… ‚‡ ƒˆ ƒ ‰… Š „ ‹Œ Ž# ‚ „   ‘’”“ ‹ ‡ ’ ƒ ‚  ‚ ‰… ’• ƒ – — { | ˜&™ —  y €

test

š ›œ  ž Ÿ  ¡ œ ¢£ ¤¥ ¦ ¤ £ ¦ ¢ ž ¢ §[¨ ©ª « ¬®­ ¯° ± ²  {³  ´[µ y — µ ¶€ y ·z€ z ¸   yx ¹®º “ ƒ » ‚ €·z ¼ ¸ x ½ ¹ ¾ ¿ À Á  €·z  — ¸ x { ¼ | yx ¹ ¾  º ¿ Á ·z€ ¼ ¸ x ½ ¹ º à ’ … ‰… ƒ ‚ˆ  ď ‰  “ ƒ „ … Å ƒ Š „ … ‰… Š „ ‹ Œ Æ … “  ‚ “  Ç …ˆ ȏˆ „ ƒ „  ‹ ˆ ƒ ·z€  — ¸ x { ¼ | yx ¹ º Ò … ‰… ƒ ‚ˆ  ď ‰  “ ƒ „ … ‰ƒ ‚… Š Š •   ·z € ¼ ¸ x ½ ¹ ‚ É ƒ ƒ ‡ ’ ‹ ‰ƒ „†…

(40)

Ê Ë Ë

Î

ÏÐ Ï Í Í Ñ ËÒ

Ó Ó Ó

<c:choose>

<c:when ”${usuario.nome == 'Felipe'}”>

Permissão ok!<br>

</c:when>

<c:when ”${usuario.nome == 'Michael'}”>

Permissão ok!<br>

</c:when>

<c:otherwise>

Permissão negada!<br>

</c:otherwise>

</c:choose>

(41)

Ô ÕÖ Ú Û Õ Ü ÝÞ ßà á â#ã ä&å æ çè çé ê ë.ì í é íîï í ð ì ë.ì ñ î ï ç ç ë ò ð ì óô çõ ç ó ö ò ë çî ì ÷ ø ç ó ù ú û á â ü&ý û å æ ß

items

þ ÿ      ÿ       

var

þ        ÿ   ÿ         

varStatus

þ        ÿ        ÿ      

begin



end

þ    ÿ                  

step

þ      ÿ          å á å   û  æ ! "# íé í ì ó çî çè çé ê ë ì ð í ç $ é ì ð ì ò ë çî ì ÷ % í

(42)

& ' (*) + /) 0 0 1 2 1 243 5 67 8 9 : 7: ; 8 <=?> @ A BDC E @F C G H @I C J F F I H @ I G K E C I L M N @I EPO I Q R C E S G H C T <= > U G H K J C H I K E C I L M N @ I E O I QV J @W C I M G H @C W X Y 67 8 Z 9 ; 8 <= > J @ G E I C R W H @ G [ W C L @ H C I \ F F F @ I E ] I K E C I L M N @ I EPO I QV J @W C I M G H @C W ^ Y _a` b _ :` 8 <= > cQ I R K G H K J I G H @F C I K E C I L M N @I E O I Q ] I \ L K W C K L I _a` de ` 8 <=?> c Q I R K G H K J I G H @F C I K E C I L M N @ I E O I Q ] I [ Q E K W I 67 8 f 7 6 _ ; <= > g I Q @ L H @I E L K A O E @ h*i j kml V @O l n o o F C I E L K A O E @ G N @ c @ K C F C \ J K c K J I H @ Y 67 8 p ; q <= > g I Q @ L H @I E L K A O E @ i l r V @O l n o o F C I E L K A O E @ G N @ c @ K C F C \ J K c K J I H @ Y 67 8 s 8 7 t <= > g I Q @ L H @I E L K A O E @ u v i w V @O l n o o F C I E L K A O E @ G N @ c @ K C F C \ J K c K J I H @ Y

(43)

x y z|{ } y ~ € { ‚ ƒ  „

<table border="1" cellspacing="0" cellpading="0">

<c:forEach items="${pageContext.request.headerNames}"

var="parametro" varStatus="status">

<tr>

<td><c:out value="${status.count}"/></td>

<td><c:out value="${parametro}"/></td>

<td><c:out value="${header[parametro]}"/></td>

</tr>

</c:forEach></table>

<ul>

<c:forEach var="i" begin="1" end="10">

<li><c:out value="${i}"/>

</c:forEach>

</ul>

(44)

… †‡ Š ‰ ‹Œ Ž  ‘’ “ ”a• –˜— ™ š ›œ žŸ   ¡a¢ £¢ ¤ ž œ ¢ £ ¥¦ §©¨ ª« ¬ œ ­ ®Ÿ ¯° “ ”a± ² ³ ° “ ” ´˜µ ° — ‘ ™

items

¶ · ¸ ¹ º¼» ½¾ ¿À ¿Á  à ÄÅ ÆÇ

delims

¶ ÈÉ Ê Ë À Ë Ì Í È ¿Î É Á È ¿Á Â Ã Ä Å ÆÇ

begin, end, varStatus

É

step

Ï À É Á À ¿ Á ËÐ Ñ Ë Ò Ë ¾ Í È ¿ ÓÔ É É À Õ Ö× ØÚÙ ¹ ÛÝÜ Ö Þ ß à — “á — â ã ° 㠙 ² ¤ä ¢ å¢ Ÿ œ £ œž œ æ å ­ › Ÿ ¬ ¢ œ ® åŸ ¬ Ÿ š › œ žŸ   ¡ ¢

(45)

ç è é|ê è ë ìí ê ï ê èð ñò

<table>

<c:forTokens items="a,b;c,d,e,f;g;h" delims=”,;”

var="token" varStatus="status">

<tr>

<td><c:out value="${status.count}"/></td>

<td><c:out value="${token}"/></td>

</tr>

</c:forTokens>

</table>

(46)

ó ø ùú ûü ý þaÿ       ü  ý   ü  ýú  þ ýú ü    ü  þ   ý           ! " #  "    $% & '  ý þ (    û 

name

) *+ ,-. + /01 2 ,-3 1 +

value

) 40 5 +1 . + /0 1 2 ,-3 1 + 6  ý  87  7 9  "    

value

(47)

: ;< = > BDC EF G HJI KL M NO PQ R SQ T U G HJV W OX YOX X Z [ \ Q [ ]_^ R SQ `a b c U G H de U L E M

value

f g h ikj l m h no p q l r i h s t g h j u h vkw j i u s h x

var

f g h l t y g r i q j z{ t j | h i~} { hw j j  t s t m j€ no p w l r y t l z rw w h | h z yƒ‚ t | h xk„ u r l r{ r v r l y h no p

scope

f rw { j zj q j z{ t j | h i x m h lg h t y g r i

context –

{ j | s r… s j q j z{ t j | h i x m h no p † L G‡ L ˆ8‰ U ‰ W M \ Q Š Z‹ F M ‡ ‰ ‰G Œ Ž ^ Y N P ^ [Q P Z 

(48)

 ‘ • ‘

–

—˜ ™ š

URL direto na página:&nbsp;

<c:url value="hello.jsp"/><br>

URL com parâmetros atribuída a uma variável:&nbsp;

<c:url value="/hello.jsp" var="url">

<c:param name="nome" value="Felipe"/>

<c:param name="sobreNome" value="Leme"/>

</c:url>

<c:out value='${url}'/>

<br>

(49)

œ ž Ÿ  Ÿ   ¢¤£ ¥D¦ §¨ © ªJ« ¬­ ® ¯° ± ² ¯° ³ ²´ µ¶ ´ ³ · ² ° µ ¸ ° ¹º ¯ ´ » ¼° ¯ ½_¾ ¶ ¶¯ ´ ¿ ¸ ¯ ¶ ÀÁ  ¹ ¶ ¸ ¯ ¶ Ã Ä ¼ ± ° ¿ Å ´ ³ Ŷ µ ± ´ ÆÇ Ç È ¯° ± ² ¯° ³ ¸ ½ É Ê © ª ËÌ Ê ­ ® §

url

Í ÎÏ ÐDÑ ÒÓÔ Ô Ó Õ Ö Ô Ó × ÖDØ Ù Ñ Õ Ñ

context –

Ø × Ù Ú Ó Û Ú Ø Ü Ø Ý × Ö Ø Ñ Ù Þß Õ Ñ ÎÏ Ð à ­ ©á ­ â8ã Ê ã ® ä ¸ ¶ å ¼æ ®¨ á ã ã© çè ¹ ´ ¾ ³ ²´ µ¶ ² ¼ ½

(50)

é ê í ê î ïð ñ ê ò ñ ê ï ó¤ô

<c:redirect url=”http://www.justjava.com.br"/>

<c:redirect url=”/showUser.jsp" context=”teste”>

<c:param name=”user” value=”felipeal”/>

(51)

õ ö÷ ùú û¤ü ýDþ ÿ                       ÿ 

value, var, scope



context

 ! " ! #%$ & # ' #%( ) * " +,   - ./0 1 243

varReader

 5 )6 # 7 5  8 * " 9 #%: " ;=< > <@? A=B ? CED < F D 1 +,  6  (  G 6 7 ) HI J

charEncoding

 ( K * #%$ " *  ( )6 )( 9 6 ! L " : ( # " & ) 8M * " 6 ( , 6 ! " * ) HI J N  O  P4Q  Q R    ST U O Q Q VW X    T Y

(52)

Z [ ì í [ î ïð ò ì ñ ó¤ô

<c:import url="http://www.justjava.com.br/cabecalho"/>

<c:catch var="excecao">

<c:import url="http://justjava/corpo.jsp"/>

</c:catch>

<c:if test="${not empty excecao}">

Corpo da página não encontrado:&nbsp;

<c:out value="${excecao}"/><br>

(53)

]_^ ` ab c b d e ^ fhg f b c b i ]_^ ` ab c b d e ^ fhg j k a g` ^ i ]_^ ` ab c b d e ^ fhg l ^` b i ]_^ ` ab c ^ im n i c ^ a oqp rts g o i u uxw y{z |} w ~ } y

(54)

 ƒ‚ † ‡  ˆ ‰ †Š ‹%Œ Ž  ‘ ’“ ” •—– ˜ ™š › š œ ™ š ž –˜ Ÿ œ ™   ˜ ¡_¢ – £h¤ š ¢ –˜ £ – ¢ – ™ š ¥ ¦ ˜ ¤ • ¤˜ § Ÿ¢ ¡ š ¥ £h¤ ž – ¢ š ž ¡q¨ š © ª – £ – œ ¥ œ « ˜ ¡ – – œ £ ¤ •—– ˜ ™š ¢ œ ¥ › – ™ ¡ ¨ š £hš ¢ – ™– Ÿ ¬ ™¤˜ –®­ ™– ¤ £ š – œ ¦–˜ ¢ ¤ Ÿ › š ¯¤ ™ ° ±   ²³ ± “  ”

value

´ µ ¶ ·¹¸ º ¶» º ¼ ½ ¸º ¾ ¶ ¿ ¶ À ¸

type

´ Á ¸ ÂÃ Ä ¸ Å ¶ ·Æ ÅÇ ¾ È ¼ º É Ã Çº º ¼ ÅÃÊ ¸ Ç ºÂ ¼ à ¼ Å ¿ ¶Ë ¼

pattern

´ Á ¸ Âà Ä%¸ Å ¶ ·Æ  ¶ À º Ì ¸ À ¼ ½ ¸º ¾ ¶ ¿ ¶Í Ì ¸

currencyCode

Î Á ¸ ÂÃ Ä ¸ Å ¶ · Æ Ã Ï À Ä Ë ¸ Ð ÑÒ À ¶ ¾¸ ¼ À ¶

currencySymbol

Î Á ¸ ÂÃ Ä ¸ Å ¶ ·Æ » Ó ¾ È ¸ · ¸ À ¶ ¾¸ ¼ À ¶

groupingUsed

Î ½ · ¶Ë Á ¸ ÂÃ Ä ¸ Å ¶ ·Æ Ä Å À Ä Ã ¶ Å À ¸ » ¼ ¸ ½ ¸º ¾ ¶ ¿ ¸ À ¼ » ¶ Ó À ¶ à ¸ Å ¿ ¼ º Ô » ¼ ºÂ ¶ ¶ À ¸º » ¼ À ¼Ã Ä ¾ ¶ Ä » É À ¼ ¾ Ä ·Õ ¶ º É ¼ ¿ Ã×Ö

(55)

 ƒ‚ † ‡  ˆ ‰ †Š

maxIntegerDigits

Ø

minIntegerDigits

Ù Ú¹Û ÜÝ Þ%Û ßà áâ ã äæå Þ ç Û è é êë Þ éÛ è Ø é ä ß Þ éÛ è ã à Üàì ç í Þ ß ç í Þ ì à ã à èà ä ã¹à

maxFractionDigits

Ø

minFractionDigits

Ù Ú Û ÜÝ Þ%Û ßà áâ ã äæå Þ ç Û è é êë Þ éÛ è Ø é ä ß Þ éÛ è ã à Üàì ç í î ì à Ý Þ Û ß ê ì Þ à ã à èà ä à

var

Ù ï àì Þ ê ï í á Ú Û Ü Ý Þ%Û ßà áâ ðñ í Ý Û ß ç í ì ê à èà ä ã à

scope

Ù Ú Û ÜÝ Þ Û ßà áâ í èÝ Û ÜÛ ã à àìï Þ ê ï í á Ú

page, request,

session, application

â ò_ó ô õó öø÷ ù ÷ úû à ç ì Þ ü ñ ç Û

value

(56)

ý þ ÿ  þ     þ 

<fmt:formatNumber value="9876543,21"

type="currency"/>

<fmt:formatNumber value="12,3" pattern=".000"/>

<fmt:formatNumber value="123456,7891"

pattern="#,#00.0#"/>

<fmt:formatNumber value="123456789" type="currency"

var="cur"/>

(57)

ý þ ÿ þ      þ þ 

<c:set var="reais" value="R$ 5,00" />

<fmt:parseNumber value="${reais}" type="currency"

parseLocale="pt_BR" />

(58)

           "! # $&% ' () * ) + ) * ) ,-. % / 0 %' ) , + - ) 1%' + % 1% ( ) , 2 ' -$ - ' 3 1 4 ) , + -5 % 1) 5 476 ) 8 9 % + % / , / : ' 4 % % / + -$&% ' ( ) 1 / , * % ( 4 6 ) +;) < =   >"? = !  #

value

@ A B CED F BG F H I DF J B K B L D

type

M N D OP Q D R B CS L B K HUT K Q J H D V W D K X

dateStyle

M N D OP QD R B C S O B L F Y D L H I DF J B K BZ Y D L B L B K B

timeStyle

M N D OP QD R B C S O B L F Y D L H I DF J B K BZ Y D L B X DF B

pattern

M NED OP Q D R B C S O B L F Y D L H I DF J B K BZ Y D P G V K D J Q\[ B L D

timeZone

M N D OP Q D R B CS ] Q J H ^ D R H L B L B K B _ X DF B BG F H I DF J B K B L B

(59)

      

var

` a bc d e a f gh ij k d il b gm no f k il p fc erq b st b

scope

` h i j k d il b gm f q k ij i t b a bc d e a f gh

page, request,

session, application

m u\v wx v y{z | z }~ l  i o p d g d\€ b t i

(60)

 ‚ ƒ„ … ‚ † ˆ‰ „ Š ‹ ˆ ‹ ˆ ‚Œ

<jsp:useBean id="now" class="java.util.Date" />

<fmt:formatDate value="${now}" timeStyle="long"

dateStyle="long"/>

(61)

  ‘’ “” ‘  ” •     "! # 1% –— - ' * - 2)' ) +;) * ) ,-. % / 0 %' ) , + - ) 1%' + % 1% ( ) , 2 ' -$ - ' 3 – 1 4 ) , + -5 % 1) 5 4 6 ) 8 9 % + % / , / : ' 4 % % / + -$&% ' () 1 / , * % ( 4 6 ) +;) < =   >"? = !  #

value

@ A B CED F BG F H P D R A H F K Q L D

type

@ N D OP Q D R B CS L B K H T K Q J H D V W D K X

dateStyle

M N D OP QD R B C S O B L F Y D L H I DF J B K BZ Y D L B L B K B

timeStyle

M N D OP QD R B C S O B L F Y D L H I DF J B K BZ Y D L B X DF B

pattern

M NED OP Q D R B C S O B L F Y D L H I DF J B K BZ Y D P V G K D J Q\[ B L D

timeZone

M N D OP Q D R B CS ] Q J H ^ D R H L B L B K B _ X DF B BG F H P D R FA H K Q L B

(62)

  ‘’ “” ‘  ” •

parseLocale

˜ ™Eš ›œ  š žŸ  ¡ ¢ š œ Ÿ  E£ Ÿ ¤£¥ ¦ ¤Ÿ § š œ š ¨š © Ÿ ¤ £ § Ÿ œ š žª £¥ ¤ « š

var

˜ ª Ÿ¥  ¬ ª £   ™ š ›œ  š žŸ  ¡ ­ ¦£ œ š ž ® £¥ ¬ ¤Ÿ ¯ § Ÿ

scope

˜ ™ š ›œ  š žŸ  ¡ £ ¤œ š ›š § Ÿ ª Ÿ¥  ¬ ª £   ™

page, request,

session, application

¡ u\v wx v y{z | z }~ Ÿ ® ¥  © ¦ ® š

value

(63)

 ‚ ƒ „ ‚ † ˆ‰ ‹ Š … ‚ ‹ ˆ ‚Œ

(64)

° °³² ´µ ¶· ¸\¹ º » º ¼½ º ¹ ¾¿ À Á º  º à ¿ Ĺ ¾Å Æ Å Ç ¿ Ä È ¿ É ÉÅ ¾ Â Ê ¿ É Æ Ë Å º ¼ Ê7Ì º ¹ ¾¿ É Æ Ä ¼  º Æ Í ¾Å Æ º Æ ¹ ¹ Å Æ Ä ¼  º Î ¿ Æ Î Å ¾¿ É Æ Ä ¼  º Æ Ï º ¾ Ê ¼ ÀÅ É Â Å Ë Å º ¼ Ê7Ì º ¹ Ê É ÆÅ ¹Ð Ñ Å ÆÓÒ º Â Ä º ¼ Ê7Ì º Ð ÑÅ Æ Å ¹ Å À¿ Ð Ñ Å Æ Î Å Î º Î ¿ Æ Ë Å º ¼ Ê7Ì º ¹ Ô Õ ¹ Ê º Æ ¿ ÖÅ ¹º Ð Ñ Å Æ Î Å Ï ¿ ¹ º À  ¹º É º Æ ¾ Ê ¿ º É ¼

(65)

× Ø Û Ü ÝÞ ß àá âã ä åæ ç"è é êë êì í îðï í ñï ò\ó ô îðõ í ö ÷ø ù ú û ø î ò\ü ø ýþ ùÿ      ÿ ø í ÿ úÿ  ÿ   ä å  è é â

sql

                

dataSource

        !    "   #$ %&   %    !         

var

'  ( '           )        (   *,+        -   .      

scope

              '  ( '   

page, request,

session, application

/ è ä0 è 132  2 4 é ï î õ ò 5 í î ø

sql

(66)

6 7 7 ; < ? @ A 7B

<sql:update>UPDATE usuario

SET total_acessos = total_acessos + 1

WHERE login = ?

<sql:param value="${login}"/>

</sql:update>

(67)

C D G HI J KL MN O PRQ S T U VW VX Y Z\[ Y ][ ^`_ a Z\b Y c dRe fg hg ij k l O P m n l T M U

sql

o pq r s tu v wx y r zt z{ z| u s y } y

dataSource

o ~ x | p x q y € ‚ s t p q ƒ } z „… †‡ x u † y s y ‚ x u t | z u r y } x

maxRows

o ~ x | p x q y € q ˆ,‰ zt x ‰ Š { p ‰ x } z € p q ‹ y r t z s x t q y } x  z € y | x q r u € s y

startRow

o ~ x | p x q y € q ˆ,‰ zt x } y t p ‰ z p t y € p q ‹ yŒ u z r zt Š t z s x t q y } y  yt y x u r u Š t p x

(68)

C D G HI J

var

 Ž  ‘ ’ Ž “ ”• –—˜ ‘ –™  ”š ›œ ˜ “ –™  “ ’ – ™ ž,Ÿ “ –   “ ” ‘ ™ ¡ ¢  £ “     ¢

scope

 • – —˜ ‘ –™  ”š “¢ ˜ –— –    Ž  ‘ ’ Ž “ ”•

page, request,

session, application

š ¤¦¥ §¨ ¥ ©3ª « ª ¬­ ® ¯\° ± ²´³ ¯\µ

sql

(69)

¶ · ·

º

» ½ ·¾

¿

<sql:query var="clientes" dataSource="${dataSource}">

SELECT * FROM clientes WHERE pais = 'China'

</sql:query>

<table>

<c:forEach var="cliente" items="${clientes.rows}">

<tr>

<td><c:out value="${cliente.nome}"/>, cuidado com a

pneumonia asiática!!!!</td>

</tr>

</c:forEach>

</table>

(70)

À Á ÄÅ Ä Æ ÇÈ ÉÊ Ë ÌRÍ Î Ï Ð ÑÒ Ó\Ô ÕÖ Ô × ÕØ Ù Ò Ú ÛÜ Ô Ø Ý ÛÒ Ó Ø Õ Þß àâá Ú ÛÔ ã ÚÒ Øä å æ Ë Ì ç è æ Ï É Ð

value

é ê ë ìîí ï ð í ïñ ë ò,ó ô õ ï í ö Ï Ë÷ Ï ø3ù æ ù ú Ð Ô Ó Ø û ü Ú Ó Õ

value

(71)

ý þ þ     

<sql:update>

UPDATE usuario

SET total_acessos = total_acessos + 1

WHERE login = ? <sql:param value="${login}"/>

</sql:update>

(72)

   ÇÈ ÉÊ Ë ÌRÍ Î Ï Ð                 !" #      $      %   '& (   )  * å æ+ , ç è æ Ï Ð

-value

. / 0 132 4 5 2 46 0 798 : ; 4 2

type

. < 2 6= > 2 ? 0 1@ 5 0 ; :BA ; > 8 : 2 C ; > 8 :D ; 08 6 öFE + ÷ E ø3ù æ ù úG    H I   

value

(73)

J K K N O Q R K QS Q T

<sql:update>

UPDATE usuario SET data_acesso = ? WHERE login = ?

<sql:dateParam value="${now}"/>

<sql:param value="${login}"/>

</sql:update>

(74)

UWV XY Z ]Y ^_ ` acb dfe gh e ie j kl m h e in o k l p m p e n ql r is out s n e hv w xFy z {| } ~ € ‚ ƒ| { „ y … † ‡ˆ'‰ n ql l h h l v p e o Š j ‹ l i p e n q Œ mh ke p  l g'Ž f ‹ l ‘e j m Œ mh k e p  l g ’ m j m qe p l  m o n jl Ž “” | • { ‚ ‚ ƒ| { „ y … † –˜— ™›š }W| œ ‡ˆ ‰ n ql l h h l v p e o Š j ‹ l i g mh  m o n jl i p m h e in o k l p m Ž x { z  š ƒ ‚ ƒ| { y ž Ÿ ¡š ¢  ¡| † ‡ˆ ‰ j m qe i p l i m oun jl i p m h e in o k l p m  š { ƒ| { „ y … y Ÿ š { ‡ˆ ‰ k m k l o p e o Š j ‹ l i h e k mh jl p l i “ y y ž | š  † £  ¡  {| } – — ~  œ „ y … † ‡ˆ'‰ Š j p Š  l ie m l k h Š ¤ n k m ql¥ d m¦ i § m Š n il p m gl h l o Š q Š k l h m j ¨ qe h m p e o Š j ‹ l i k p

(75)

© ª ­® ¯° ª ¯± ­ ²´³ ° µ ¶›· ¸¹º »½¼ ¾ ¿ À ÁÃÂ Ä ÅfÆ Â Ç ÈÉ Æ Ê Ë Â Ì Ë Ê ËÍ Î Æ Î Ï É Å Ê Æ Î Ð Á Â Æ ËÍ Ê Á ÊÑ Ç Î Ð Ò ¸Ó Ô À Õ Ö ×WØ Ù · Ú Â Ò ¸ Ó Ô À Ó Õ·º Û Ú ÏÂ Í Ü Ê Ç Ë Å Ð ÅFÝ Î Á Î Ï Þ Ù º » ß Õ Ù ¿ À ¸

dataSource

à á3â ã ä å âæ ç èé êìë í å æ î ï3ð ñò óô âõ ó ç ë ç ê âõ í äð õ ö ç ï â

isolationLevel

à á â ã ä å âæ ç èé æ ÷ ø ð è ï ð å ö â è çù ðæ ë â ï ç ë í æ ç ö çú û â ü ¿º Ö ¿ × Ø Ù Ø ý À ÅfÆ Ï Ë Í Ç þ ÿ Â Ï Ò ¸Ó Ô À Õ Ö ×WØ Ù · Ú Â Ò ¸Ó Ô À Ó Õ ·º Û Ú

(76)

       

<sql:transaction>

<sql:update>UPDATE usuario

SET data_acesso = ? WHERE login = ?

<sql:dateParam value="${now}"/>

<sql:param value="${login}"/>

</sql:update>

<sql:update>UPDATE estatisticas

SET numero_visitas = numero_visitas + 1

</sql:update>

(77)

             !" # $&% ')( * +-, . /10 , 2 3 415 6 5 7&8 2 9: , , 8 , ; <8 9 6 5 : 8 3 8 = 5 9 / > = , ? +-, , @: 8 <8 8 2 415 6 5 7&8 2 9: , <5 + 9 A 8 B C # $ D)E C ( * !

dataSource

F GIH JK L H MN OP QSR T L MU VIW XY Z[ H \ Z N R N Q H T \ K W W ] JH T R N V H

driver/url/user/password

F G H JK L H MN L ^ P _ N OIH T W ^ \^ N V H ^ JW O H Z T L _ W T ` N MN U W T JN T N H a R W T N K H MW ] b H

var

F _ N T L c _ W O G H JK L H M N OP d \W K H M R W T c H Z N R N Q H \ T K W

scope

F G H JK L H MN OP W ^ K H JH V N N_ T L c _ W O G

page, request,

session, application

P egf hi f jlk m k no 0 A 8 2 6 / ? /gp 5 + 8

(78)

q r r u v v r x y x y t z {| r}

<sql:setDataSource dataSource="jdbc/DB" />

<sql:setDataSource var=”ds”

driver=”com.mysql.jdbc.Driver”

url=”jdbc:mysql://localhost/mysql” user=”system”

password=”manager”/>

(79)

~ ~€  ‚ ƒ„ …1† ‡ ˆ ‰1Š ‹ Œ- Œ-Ž  ‘’ Š “ Ž ˆ ”• – • † Š ‰1—  ˜ † ™ š Ž Œ ’ ’ ˜ ’ ‘’ Š “ Ž ˆ ”• – › ˜  œ Ž Ž Š Œ ‰  ‰ Ž Š † ˜  “ ’‡ † ™ ž ’ ˆ Ÿ ‡ † Š ˆ   Ž‡ ‘† ™ ž ’ ˆ ¡ ˆŽ Œ ’ ¢£ ’ ¤¥ ¦ § ¨

(80)

© «1¬ ­® ¯ ° ± ° ¯² ³ ´&µ ¶1· ® ¯µ ¸® ¹ º ² ³ ´ µ »¼ ½¾ ¿ ¿ ¿ À Á ¬ ² º ² ­² · ²  µ ¯²  °gà ² · ® ¬ ®  ® ¯ ° µ ¹² · ®  ® ¸® ¹ Ä µ ¬ º ® ¹ Ä · µ º ® Å ¸ º µ ¯ Å ¸® ¹ Ä µ ÆÇ È «1¬ ­ É ¯ ° ® º ® ÊgË ÌÍÎ Ï Ï Ð1Ñ Ò Ó1Ô ÒÕ ÖÔ Õ Î Â µ ¯²  ­ ² · ² º µ ¯ Å ¸® ¹ Ä µ ¬ ÆÇ È × µ ¬ ¬ Å ° ® Ø ­· ® ¬ ¬ Ù&® ¬ÛÚ Ü Ð Ò Ý Ð Ò Õ º ® Þ² · ° ß Þ® ° ¬ Ú ± Å ¹ ³ Ù ® ¬ ­² º · ´ µ Ú ± Å ¹ ³ Ù&® ¬ ® Ø Ä ® ¹¬ à Þ® ° ¬ ® º ® ± ° ¹ ° ³ ´ µ º ® ÒÔ Î á Ï ÔÌ Î â Ï

(81)

ã ê ë ì íî ï ð&ñ ò)ó ô õ÷ö ø ùú ûüý þ1ÿ     ù     ù ï ð  ó í ô

xml

                 ! " # $ %'& (   )+* , -* $ .

var



scope

         !    /    0 .  1   / 2 1  03      4  2               

varDom



scopeDom

 /   65   7 1   / 2 1  0   2    /   8 $ (:9 ; <>= 9 -8? 9 @ 8= A? * & #

systemId –

BC D /     / E /             

filter –

E / 0    ! 8 $ ( 9 F? G 9 H , F 9 IJ KL % G # * $ .    0 /             M ó ïN ó OQP P R ô  ù      ù ö S TU ö T S ö  ù

(82)

V W [ W \ V] ^_ [ W`

<c:import

url="http://www.justjava.com.br/palestra.xml"

varReader=”xmlReader”>

<param name=”id” value=”666”/>

</url>

<x:parse xml=”${xmlReader}” var="documento"/>

<c:import

url="http://www.justjava.com.br/palestras.xml"

var=”xml” filter=”${filtroPalestra}”/>

(83)

a bc de ikj lm n oqp rs t uv u w x uy z u{ | }~{   €q ‚ƒ „ … † { x z }~ x z {  ~{ y  wˆ‡ u ‰  Š u } ‹Œ x Š u Ž … n o  … s t l

select

‘ ’“ ”• ’– – —™˜ š› œ  ž

escapeXML

‘ Ÿ ¡ ¢ £ ˜ ”¤ ¥ ˜¦ ¡  § ¥ ¦ ¨ ¥ ¤ ¡ ¦ ¨ ˜ – ’ ¤ ¡ • ¡ ¤ © ’• ’– ’– ” ’¤ ¥ ¡ ¥ – ¨ ’ª ’« – ’• –¬ ­ – © ¥ © ¬ ® ¨ ˜ – ¯ s n° s ± „ … „²t Š €  y ‡ x wx´³ u ‰ 

(84)

µ ¶ ¶ ¹ µº ¸ » ¼h½

<c:import

url="http://www.justjava.com.br/palestra.xml"

var=”xml”/>

<x:parse xml=”${xml}” var="documento"/>

<x:out select=”$doc/titulo”/><br>

<x:out select=”$doc/autor”/><br>

(85)

¾ ¿À Á ikj lm n oqp rs t ÅÆ Å Ç È ÅÉ Ê ÅË Ì ÍÎË Ï Ï ÐqÑ ‚ƒ „ … † Ë Å Ò Î È Ó É È Ñ ÎË Ï É Ç Ò Å Ô Ñ Õ É Ê Å Æ ÅÎ È Ö×Æ Ë Ç Ô Ë Ë ÏØ Ñ ÍÑ Ž … n o  … s t l

select

‘ ÙÚ ÛÜ ÙÝ Ý Þ™ß š› œ  ž

escapeXML

‘ àáâ ã ä ß Ûå æ ßç â áè æ ç é æ å â ç é ß Ý Ù å â Ü â å ê ÙÜ ÙÝ ÙÝ Û Ùå æ â æ Ý é Ùë Ùì Ý ÙÜ Ýí î Ý ê æ ê í ï é ß Ý

var

‘ ç ß ì Ù é â ë â Ü æ ð ë Ù áñ í Ù Ü Ùå Ù î ÙÜ ð ß ë â á ß Ü é â ÙÚ ÛÜ ÙÝ Ý Þ™ß

scope

‘ ÙÝ å ß Ûß ä ß Ûå æ ßç â áè é â ë â Ü æ ð ë Ù á ¯ s n° s ± „ … „²t ò Ð Ñ É Ò È Ç È´ó Å Ô Ñ

(86)

ô õ ø õ ù ôú ø õ ûhü

<c:import

url="http://www.justjava.com.br/palestra.xml"

var=”xml”/>

<x:parse xml=”${xml}” var="documento"/>

<x:set select=”$doc/titulo” var=”titulo”

scope=”session”/><br>

<x:set select=”$doc/autor” var=”autor”

scope=”session”/><br>

(87)

ý þÿ                               ! " # $   %   & '(      &      (   ) # *+ #   

select

, -. /0 -1 1 243 56 7 8 9: -; -1 ;

-var

, <3 = -: >? >0 @ A ? -BC 3 /D @ 3 < > BE FG - 0 -D -H -0 A 3 ? > B 3 0 : > -. /0 -1 1 243 : -; -1 ;

-scope

, -1 D 3 /3 C 3 / D @ 3 < > B E : >? >0 @ A ? -B I  J  K " # "L  M '                            N  &      (  

(88)

O P QSR P T OU V

<c:import

url="http://www.justjava.com.br/palestra.xml"

var=”xml”/>

<x:parse xml=”${xml}” var="documento"/>

<x:if select=”$doc/[titulo='JSTL']”>

Introdução às bibliotecas JSTL

</x:if>

(89)

Y Z[ \ ] ]^ _` a Y Z[ _b ` c Y Z[ ] d _e ^ _` gh ij k l m no p q rs tvu rw sx s yu z t {}| ~  r t  € ‚„ƒ { w ‚ s r  r yu ‚… s † ‡ k l ˆ‰ ‡ o i p

select

Š ‹Œ Ž ‹  4‘ ’”“ • – —˜ ™ š› œ —ž Ÿ  ¡¢ ‹ £ ‹ £ ‹ ¤ o k¥ o ¦¨§ i ‡ § © i p ª « p j ¬ o o ih ­ž® ƒ s ¯ r pª « ° ¬ h ± ­ ²³ ´ µ  pª « o ‡ ¬ h k ° l ih ­ ²¶ ® ³ µ ª « p ° ¬ h ± ­ ® · ‚ u yu s rx  ¸ y q ƒ s t u ¹ qs z t u yu z t { | º u ƒ  r ƒ  » ux ¼x t s t  { x s ª « p o ‡ ¬ h k ° l ih ­ ® ·‚ u yu s rx  ¸ y q ƒ s t u ys ru z z … q € ª « p ° ¬ h ± ­ r ½ s s w ‚ { ys tvu

(90)

¾ ¿ ¿  ¾Ã Ä Á Á Å ¿Æ Ç Ç Ç

<c:import

url="http://www.justjava.com.br/palestra.xml"

var=”xml”/>

<x:parse xml=”${xml}” var="documento"/>

<x:choose>

<x:when select=”$doc/[titulo='JSTL']”>

Introdução às bibliotecas JSTL.

</x:when>

<x:otherwise>

Palestra de outros autores.

</x:otherwise>

(91)

È ÉÊ Î ÏÐ Ñ ÒÓ ÔÕ Ö × Ø ÙÚ Û ÜÝ Ü Þ ß Üà á Üâ ã äåâ æ æ ç è éê ë ì íî„ï ß ä ß}ð Ü â á ñ ï â åâ ï è å ñ Ü ñ ò è â Þ â â á ñ ï è æ óô õ ö â ß ï â å Ü÷ â æè øvå â è åâ à æ Þ ï Ü ò è ò â æ æ Üâ ã äåâ æ æ ç è ù ì Ö × úû ì Ú Ô Û

select

ü ýþ ÿ ý        ý 

var

ü   ý   ý   ÿ   ý  ý ý   ÿ ÿ ý      ÿ      ý ý ý  ý     ý    ý    !  "   # $      ý ýþ ý     ý     ý  

(92)

% & ')( * & + %, ( . /0 1

<c:import

url="http://www.justjava.com.br/palestra.xml"

var=”xml”/>

<x:parse xml=”${xml}” var="documento"/>

<x:forEach select=”$doc//autor”>

Autor: <x:out select=”@nome”/><br>

<x:set select=”@nome” var=”autor”/>

</x:forEach>

<x:forEach select=”$doc//autor” var=”autor”>

Elemento autor: <c:out value=”${autor}”/><br>

</x:forEach>

(93)

2 7 8:9 ;< = >@? AB C DE FHG IKJ L MON P Q C R =S T ; U B =V W XE N MON Y Z[ N E \ ]J^ _ \N I ^ ` M J I ^ J [ D Y ` ^ \J a b ` c R = > de R B C ;

name

f gh ij k h lmn o ij p n h

value

f qm r hn k h lm n o ij p n h s B =t B u S RKS v C J I ^ Z F E I `

value

(94)

w xy z|{ }~  { ƒ „:… †‡ ˆ ‰@Š ‹Œ  ŽK  ‘’ “•”   – — – ˜ ”™ — –š ‘ Ž ” ›œ  ˜ š  ™ ”  ˜ ” ™ ” – —  – ž Ÿ¡  ¢O£ ž ¤ £ £ Ÿ › ¥ ¦ § ¨ ˆ ‰ ©ª ¨ Œ  †

xml

« ¬­ ®¯ °± ² ³ ­ ´µ ¶:· ¸±¹ ³ ¹ · ² ¸ º ­¹ · ° ¬ ­

xslt

« » ¼K½ ¾¿ » À ¿ ¿ ¼ ´ Á ¶Â

xmlSystemID

« ÃÄÅ Æ ¬ ± ² ³ Æ º Æ ® · ² ¬ ­ ­ ¬ ­ ®¯ °± ² ³ ­ ´µ ¶

xsltSystemID

« ÃÄÅ Æ ¬ ± ² ³ Æ º Æ ® · ² ¬ ­ · » ¼K½ ¾¿ » À ¿ ¿ ¼ ´ Á ¶Â

var

« Ç · ¹ Æ È Ç ± ÉÊ ­ Ë ® Æ ­ · ² É Ì ¬ ­ ³ Æ Ë­ ÍÎÏ Ð Ñ ÒÓ Ð Ô ÍÕ Ð Ö ÍÓ ×Õ ØÙ Ú Û ®­ ² ³ ± ² ¬ ­ ­ ¬ ­ ®¯ °± ² ³ ­ ³ ¹ · ² ¸ º ­¹ · ° ¬ ­

scope

« ± ¸ ®­ Ë­ Ê ­ Ë ® Æ ­ · ² É Û ¬ · Ç · ¹ Æ È Ç ± É

result

« Ç · ¹ Æ È Ç ± ÉÊ ­ Ë ® Æ ­ · ² É Ì ¬ ­ ³ Æ Ë­ ÜÞÝ ßÝ à Ð àÕ á Ð Ú Î Ý Ù â ã ÍÎ Õ Ð ä Ø â × á Ú Ûå ¯ ± ¹ Ë ­ ®± ¸ · ¸¹ È ­ ¹ ± ¸¯ É ³ · ¬ ­ æ èêé ¨ ˜ Ž ›œ  ì î Ž ï•ð ô

(95)

w xy z|{ }~  { ƒ õ:ö ÷ø ù ú@û üý þ ÿ          ÿ           ž Ÿ¡  ¢O£ ž ¤ £ £ Ÿ  

Atributos:

xml

– documento XML a ser transformado

xslt

– stylesheet XSLT

xmlSystemID

– URI identificando o documento XML

xsltSystemID

– URI identificando a stylesheet XSLT

var

– variável (opcional, do tipo org.w3c.dom.Document) contendo o

documento transformado

scope

– escopo (opcional) da variável

result

– variável (opcional, do tipo javax.xml.transform.Result) que

processará o resultado

(96)

           

<c:import

url="http://www.justjava.com.br/palestras.xml"

var=”xml”/>

<c:import

url="http://www.justjava.com.br/palestras.xslt"

var=”xslt”/>

<x:transform xml=”${xml}” xslt=${xslt}”/>

<x:transform xml=”${xml}” xslt=${xslt}”>

<x:param name=”maiusculas” value=”true”/>

</x:transform>

(97)

$ %& $ ' () *,+ -. / *,0 * -1 2 34 5 687 7 9 : ; ;<>= ? =A@ BC D @ EF G ; 9 HF I C E 7 B ;< B 9 ;< B 7 J ; 2 3K L M 687 7 9 : ; ;,N N N @ < E 9 @ F HO ;< B H ; IQP 7 = R J ;S T @ < B 9 U,V WX 0 * / * 0 -Y Z . / *,+ -1 2 34 5 [ \ ] 687 7 9 : ; ;< E 9 @ F HO ; = ^ F C 7 _ = =? ; E F G GC D R 7` 9 HF EP B B ; a R D = J ;< B H bS T ;R D I Pc @ 6 7 G J 2 -d -e -) -f *,+ X g V hi * X j X -i k * ) . V V . l i X 2 34 5nm o,p q m r s tvu uw x y y{z z z}| ~, €  ‚ ƒ „,… † | ‡ˆ  | ‰‹Š Œ ' -k  687 7 9 : ; ;,N N N N Ž F HO ;  ; c 9 = 7 6

(98)

‘’ ‘ •,– — ˜,™ – š › – — ˜ ™ – œ — ž,– Ÿ–  ¢¡ £¤>¥ ¡ ¦ £ § ¤>¨ ¦© ¡Aª «¬ ©  ¢¡ £ ¤>¥ ¡ §®­ ¡ ¡ ¯8° ­ ª « ¬ ©  ¢¡ £ ¤>¥ ¡ ª £ ¡ © ¡ § ° ± ­ ² ° ª « ¬ © ª ³ ± ´˜,µ ¶ œ– — š ´˜,· ¸ –¹ ´  º œ · µ ˜ Ÿ– » ¸¼ © ¤ « ½ ¦¡ £ § © ¤ « ½ ¦¡ £ ¨ ­ ¦ « ¤ © ¡ ¨ ° ¬ ª «¬ © ª ³ ± © ¤ ­ ° ¡ ± ¾ ¾ © § ½ ¬ ° © ¦ ¤ £ ª « ¬ ©

(99)

¿ À#Á Â ¿ ¿Á À Á Ã Ä Å Ã Ä ÅÆ Ç ¿ Â Å Ä ¿ ¿É Ê Ê Ê

Referências

Documentos relacionados

O objetivo do fundo é buscar elevado retorno absoluto no longo prazo por meio de inves- timento em fundos imobiliários (FII) ou de participação (FIP), que

9 Duas esferas condutoras idênticas, mantidas fixas, se atraem mutuamente com uma força eletrostática de 0,108 N quando a dis- tância entre os centros é 50,0 em.. As esferas são

A Corte de Justiça Federal Alemã 11 considerou que, somente a “possibilidade” do comprador, empresa espanhola, se informar sobre as condições gerais de venda não é suficiente

Contudo, nos casos em que os titulares de uma autorização para utilização de uma garantia global pretendam efetuar operações de trânsito com destino à antiga República

Todavia, uma severa crítica pode ser formulada contra a viabilidade desse fundamento jurídico de recepção do duty to mitigate the loss no Brasil, pois a conduta do

que as medidas que ela deve adotar para evitar as próprias perdas devem seguir o critério da razoabilidade (reasonableness), pois são esperadas do credor inadimplido apenas

“Ora, a multiplicidade não pode haurir sua realidade senão das unidades verdadeiras, que têm outra origem e são bem distintas dos pontos matemáticos, que não são nada além

A partir dos mesmos dados do balanço orçamentário do Amazonas verificou-se também, os montantes de recursos destinados às despesas indiretas para as funções de educação,