CodeGym/Java Course/рдореЙрдбреНрдпреВрд▓ 3/TagLib рдкрд░рд┐рдЪрдп

TagLib рдкрд░рд┐рдЪрдп

рдЙрдкрд▓рдмреНрдз

7.1 c:if, c: рдкреНрд░рддреНрдпреЗрдХрд╛рд╕рд╛рдареА

рдЬрд╛рд╡рд╛ рдХреЛрдбрдРрд╡рдЬреА рдЯреЕрдЧ рд╡рд╛рдкрд░реВрди рдХреЛрдб рдкреНрд░рддреНрдпреЗрдХрд╛рд▓рд╛ рдЖрд╡рдбрд▓рд╛, рдореНрд╣рдгреВрди рддреНрдпрд╛рдВрдиреА рд╡реНрдпрд╛рдкреНрддреА рд╡рд╛рдврд╡рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛. рдкрд░рдВрддреБ рдкреНрд░реЛрдЧреНрд░реЕрдорд┐рдВрдЧ рдХреЗрд╡рд│ рд╡рд╕реНрддреВ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреЗ рдЧреБрдгрдзрд░реНрдо рд╡рд╛рдЪрдгреНрдпрд╛рдкреБрд░рддреЗ рдорд░реНрдпрд╛рджрд┐рдд рдирд╛рд╣реА. рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреНрдпрд╛ рдкрджреНрдзрддреА рдХреЙрд▓ рдХрд░рдгреЗ, рдбреЗрдЯрд╛рдмреЗрд╕ рдЖрдгрд┐ рдЗрддрд░ рд╕реЗрд╡рд╛рдВрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдХрд╛рдп рдХрд░рд╛рдпрдЪрдВ?

рддреБрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рдкреНрд░рддреНрдпреЗрдХ Java рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдЯреЕрдЧ рдореНрд╣рдгреВрди рдкреНрд░реЗрдЭреЗрдВрдЯ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╣реЛрддрд╛ if, рдЕрд╕реЗрд▓ <if>, рд╣реЛрддрд╛ for, рдЕрд╕реЗрд▓, <for>рдЖрдгрд┐ рдЕрд╕реЗрдЪ. рдареАрдХ рдЖрд╣реЗ, рдареАрдХ рдЖрд╣реЗ, рдлрдХреНрдд рдЧрдВрдордд рдХрд░рдд рдЖрд╣реЗ, рд╣реЗ рдЕрд╕реЗ рдирд╡реНрд╣рддреЗ. рдмрд░рдВ, рдЕрд╕реЗ рд╣реЛрдК рд╢рдХрдд рдирд╛рд╣реА рдХреА рд▓реЛрдХ рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рддрд╕реЗ рдХрд░рд╛рдпрдЪреЗ рдард░рд╡рддрд╛рдд. рдкрдг рдирд╛рд╣реА, рдХрджрд╛рдЪрд┐рдд!

рдкреНрд░реЛрдЧреНрд░рд╛рдорд░рдирд╛ рдХреЛрдбрдордзреНрдпреЗ рдХреЛрдгрддреЗрд╣реА рдЯреЕрдЧ рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ. рддрддреНрд╡рддрдГ, рдХрд╛рд│рдЬреА рдХрд░рдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдХрд╛рд╣реАрд╣реА рдирд╛рд╣реА - рдЬреЗрдПрд╕рдкреА рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░рдпреЛрдЧреНрдп рдорд╛рдирдХ рдЖрд╣реЗ. рдкрдг рддреНрдпрд╛рдВрдиреА рдкреБрдвреЗ рдЬрд╛рдКрди рдЬреЗрдПрд╕рдкреА рд╕реНрдЯрдБрдбрд░реНрдб рдЯреЕрдЧ рд▓рд╛рдпрдмреНрд░рд░реА - рдЬреЗрдПрд╕рдЯреАрдПрд▓ рдЬрд╛рд░реА рдХреЗрд▓реА. рддреНрдпрд╛рд╕рд╣ рдкреГрд╖реНрда рдЕрд╕реЗ рджрд┐рд╕рддреЗ:

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

<html>
   <head>
       <title> JSTL Example</title>
   </head>

   <body>
        <c:set var = "salary" scope = "session" value = "${2000*5}"/>
        <c:if test = "${ salary > 2000}">
            <p>My salary is: <c:out value = "${salary}"/><p>
        </c:if>
   </body>
</html>

рддреБрдордЪреНрдпрд╛ рднрд╡рд┐рд╖реНрдпрд╛рддреАрд▓ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреНрдпреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрд╕рд╛ рдХреЛрдб рд╕рд╛рдкрдбрдгреНрдпрд╛рдЪреА рд╢рдХреНрдпрддрд╛ рдЖрд╣реЗ, рддрд┐рдереЗ рдореА рдХрд╛рд╣реА рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рджреЗрдИрди.

7.2 JSTL рдХрд╛рд░реНрдпреЗ

JSTL рдлрдВрдХреНрд╢рдиреНрд╕ 5 рд╢реНрд░реЗрдгреАрдВрдордзреНрдпреЗ рдпреЗрддрд╛рдд:

  • рдореБрдЦреНрдп рдЯреЕрдЧ;
  • рд╕реНрд╡рд░реВрдкрди рдЯреЕрдЧ;
  • рдПрд╕рдХреНрдпреВрдПрд▓ рдЯреЕрдЧ;
  • XML рдЯреЕрдЧ;
  • рдХреЙрд▓рд┐рдВрдЧ рдлрдВрдХреНрд╢рдиреНрд╕.

рдореА рддреНрдпрд╛ рд╕рд░реНрд╡рд╛рдВрдЪреА рдпрд╛рджреА рдХрд░рдгрд╛рд░ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдореА рд╕рд░реНрд╡рд╛рдд рд▓реЛрдХрдкреНрд░рд┐рдп рдпрд╛рджреА рдХрд░реЗрди. рдЪрд▓рд╛ рдореБрдЦреНрдп рдЯреЕрдЧрд╕рд╣ рдкреНрд░рд╛рд░рдВрдн рдХрд░реВрдпрд╛:

рез <c:out> рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЕрднрд┐рд╡реНрдпрдХреНрддреА рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреЗ - <%= %> рдЪреНрдпрд╛ рд╕рдорддреБрд▓реНрдп
2 <c:set> рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓рд╡рд░ рдЕрднрд┐рд╡реНрдпрдХреНрддреАрдЪрд╛ рдкрд░рд┐рдгрд╛рдо рд▓рд┐рд╣рд┐рддреЛ
3 <c:remove> рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рд╣рдЯрд╡рддреЗ
4 <c:catch> рдЕрдкрд╡рд╛рдж рдкрдХрдбрддреЛ
рел <c:if> if рдЪреЗ analogue
6 <c:choose> рдЕреЕрдирд╛рд▓реЙрдЧ рд╕реНрд╡рд┐рдЪ
рен <c:when> рдирд┐рд╡рдб рд╕рд╣ рдПрдХрддреНрд░ рд╡рд╛рдкрд░рд▓реЗ
8 <c:otherwise> рдирд┐рд╡рдб рд╕рд╣ рдПрдХрддреНрд░ рд╡рд╛рдкрд░рд▓реЗ
реп <c:import> рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЛрдбрдордзреНрдпреЗ рд╕рд╛рдордЧреНрд░реА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ (рдЖрдпрд╛рдд рдирд┐рд░реНрджреЗрд╢рд╛рдВрдЪреНрдпрд╛ рд╕рдорддреБрд▓реНрдп)
10 <c:forEach> рдкреНрд░рддреНрдпреЗрдХ рд▓реВрдкрд╕рд╛рдареА
рдЕрдХрд░рд╛ <c:param> рддреБрдореНрд╣рд╛рд▓рд╛ рдЖрдпрд╛рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрд░реНрдпрд╛рдп рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ
резреи <c:redirect> рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рд╛
13 <c:url> рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рд╕рд╣ URL рддрдпрд╛рд░ рдХрд░рддреЗ

рдореА рдлрдХреНрдд рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрддреЛ рдЖрдгрд┐ рддреЗ рд╕рдВрдкрд╡рддреЛ. рддрддреНрд╡рддрдГ, рдХрд╛рд╣реА рдХреМрд╢рд▓реНрдпрд╛рдирдВрддрд░ рдЕрд╕рд╛ рдХреЛрдб рд╡рд╛рдЪрдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рдкрдг рдореА рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рдд рдирд╛рд╣реА.

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

<html>
   <head>
      <title> Each Tag Example&</title>
   </head>

   <body>
       <c:forEach var = "i" begin = "1" end = "5">
            Item <c:out value = "${i}"/><p>
       </c:forEach>
   </body>
</html>

рдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рд╛, рдЖрдореНрд╣реА рдЬрд╛рд╡рд╛ рдХреЛрдб рдЯреЕрдЧрдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рд▓рд┐рд╣рд┐рддреЛ, рдЬреЗрдгреЗрдХрд░реБрди JSP рдкрд╛рд░реНрд╕рд░ рд╣реЗ рдЯреЕрдЧ рдЬрд╛рд╡рд╛ рдХреЛрдбрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░реЗрд▓. рдпрд╛ рдЬрдЧрд╛рдд рдХрд╛рд╣реАрддрд░реА рдЪреВрдХ рдЭрд╛рд▓реА рдЖрд╣реЗ.

рддрд╕реЗ, рддреБрдореНрд╣реА рддреБрдордЪреА рд╕реНрд╡рддрдГрдЪреА рдЯреЕрдЧ рд▓рд╛рдпрдмреНрд░рд░реА рд▓рд┐рд╣реВ рд╢рдХрддрд╛. рдореА рдПрдХрджрд╛ рдПрдХрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдХрд╛рдо рдХреЗрд▓реЗ рд╣реЛрддреЗ рдЬрд┐рдереЗ рддреЗ рд╣реЛрддреЗ. рдЫрд╛рди рдЕрдиреБрднрд╡. рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рдХреЛрдгрддрд╛рд╣реА рдмрджрд▓ рдХреЗрд▓реНрдпрд╛рд╡рд░, рд╕рдВрдкреВрд░реНрдг jsp рддрд╛рдмрдбрддреЛрдм рдЦрдВрдбрд┐рдд рд╣реЛрддреЗ.

рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рдп рд╣рд╡реЗ рдЖрд╣реЗ? рдХрдВрдкрд╛рдЗрд▓рд░ рдЕрд╢рд╛ рдмрджрд▓рд╛рдВрдЪрд╛ рдорд╛рдЧреЛрд╡рд╛ рдШреЗрдд рдирд╛рд╣реА. рд╡реНрдпреБрддреНрдкрдиреНрди рдХреЗрд▓реЗрд▓реА HTML рдкреГрд╖реНрдареЗ рдкрд╛рд╣рддрд╛рдирд╛ рддреЗ рдХреЗрд╡рд│ рджреГрд╢реНрдпрдорд╛рдирдкрдгреЗ рдЖрдврд│реВ рд╢рдХрддрд╛рдд. рдЖрдгрд┐ рдЬрд░ рд╣реА рдХрд╛рд╣реА рджреБрд░реНрдорд┐рд│ рдкрд░рд┐рд╕реНрдерд┐рддреА рдЕрд╕рддреАрд▓ рдЬреА рдХреНрд╖реБрд▓реНрд▓рдХ рдирд╕рд▓реЗрд▓реНрдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдд рдЙрджреНрднрд╡рддрд╛рдд ... рджреЗрд╡ рдмреЕрдХрдПрдВрдб рд╡рд┐рдХрд╛рд╕ рдЖрдгрд┐ рд╕реНрдерд┐рд░ рдЯрд╛рдпрдкрд┐рдВрдЧрд▓рд╛ рдЖрд╢реАрд░реНрд╡рд╛рдж рджреЗрдИрд▓!

рдЯрд┐рдкреНрдкрдгреНрдпрд╛
  • рд▓реЛрдХрдкреНрд░рд┐рдп
  • рдирд╡реАрди
  • рдЬреБрдиреЗ
рдЯрд┐рдкреНрдкрдгреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА рд╕рд╛рдИрди рдЗрди рдХреЗрд▓реЗрд▓реЗ рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ
рдпрд╛ рдкрд╛рдирд╛рд╡рд░ рдЕрдЬреВрди рдХреЛрдгрддреНрдпрд╛рд╣реА рдЯрд┐рдкреНрдкрдгреНрдпрд╛ рдирд╛рд╣реАрдд