ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • day46_1 - JSP(jstl, if 태그, forEach)
    KIC/JSP 2021. 8. 19. 14:25
    반응형

    [JSTL]

    - 버전업을 잘 안하고 오래 유지되어 온 라이브러리라고 한다.

     

    - JSTL 종류에는 코어 태그(변수 지원, 흐름 제어, URL 관련 태그, 기타 태그), 국제화 태그(로케일 지정, 메시지 처리 태그, 포맷팅) 가 있다.

     

    - 스프링의 메시지 태그도 있고 주로 코어 태그와 메시지 태그를 다룬다.

     

    - 커스텀 태그를 만들어 사용할 순 있지만 권장하지 않는다고 한다.(협업을 위해서)

     

    [JSTL 종류]

    - 요즘은 xml은 잘 사용하지 않는다고 한다. (json이 훨씬 우세)

     

    - 국제화 태그도 스프링에서는 다르게 한다고 해서 중요하진 않다.

     

    - 코어 태그가 중요

     

     

     

     

    [JSTL 사용]

     

     

    -> 이 위치에 파일을 넣는다

    - 주로 if 와 forEach가 중요

     

     

     

    [forEach]

     

     

    [국제화 태그]

     

    - 로케일 지정, 메시지 처리 태그는 중요x, 숫자 및 날짜 포맷팅 관련 태그들은 자주 사용한다고 한다.

     

     

     

     

    [if 태그]

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri = "http://java.sun.com/jsp/jstl/core" %>
    <!DOCTYPE html>
    <html>
    <head>
    <title>if 태그</title>
    </head>
    <body>
    <c:if test="true">
    무조건 수행<br>
    </c:if>
    
    <c:if test="${param.name == 'bk' }">
    name 파라미터의 값이 ${param.name } 입니다.<br>
    </c:if>
    
    <c:if test="${param.age >= 18 }">
    당신의 나이는 18세 이상입니다.<br>
    </c:if>
    </body>
    </html>

     

     

     

     

     

    [forEach]

    <%@page import="java.util.Date"%>
    <%@page import="java.util.HashMap"%>
    <%@page import="java.util.Map"%>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri = "http://java.sun.com/jsp/jstl/core" %>
    <!DOCTYPE html>
    <html>
    <head>
    <title>forEach 태그</title>
    </head>
    <body>
    <%
    	Map<String, Object> map = new HashMap<String, Object>();
    	map.put("name", "케이아씨");
    	map.put("today", new Date());
    %>
    
    
    <h4>1부터 100까지 홀수의 합</h4>
    <c:set var="sum" value = "0"/>
    <c:forEach var="i" begin="1" end="100" step="2">
    <c:set var="sum" value="${sum+i }"/>
    </c:forEach>
    결과 = ${sum}
    <h4>구구단 : 4단</h4>
    <u1>
    <c:forEach var="i" begin="1" end= "9">
    <li> 4 * ${i} = ${4 * i}</li>
    </c:forEach>
    </u1>
    
    <h4>int형 배열</h4>
    <c:set var="intArray" value="<%=new int[] {1,2,3,4,5} %>"/> 
    <c:forEach var="i" items = "${intArray}" begin="2" end="4" varStatus="st">
    ${st.index} - ${st.count} - [${i}] <br>
    </c:forEach>
    
    <h4>Map</h4>
    <c:set var="map" value="<%=map%>"/>
    <c:forEach var="i" items="${map}">
    ${i.key}  =  ${i.value}<br>
    </c:forEach>
    </body>
    </html>

    300x250

    댓글

Designed by Tistory.