본문 바로가기
JSP/JSP & Servlet

JSTL (Java Standard Tag Library)- 1

by avvin 2019. 5. 21.

JSTL (Java Standard Tag Library)- 1


JSP에서 사용하는 스탠다드 태그 라이브러리

:모델 1방식과 같아지는 것을 방지하기 위해 만든 태그 라이브러리, 자바코드 기능을 태그의 형태로 구현할 수 있다.


 라이브러리

하위기능 

접두어(prefix)

관련 URI 

 코어 

변수지원, 흐름제어, URL처리 

 

http://java.sun.com/jsp/jstl/core 

 XML

 XML 관련 처리, Xml 흐름제어

 x 

 http://java.sun.com/jsp/jstl/xml

 국제화

 국제화처리, 메시지 관리

 fmt

 http://java.sun.com/jsp/jstl/fml

 데이터베이스

 데이터베이스 접근//DAO가 따로 있어서잘안쓰임

 sql

 http://java.sun.com/jsp/jstl/sql

 함수

 Collection 처리, String 처리

 fn

 http://java.sun.com/jsp/jstl/function


모델2 방식은 jsp에서 자바코드들을 제거한 방식인데 스크립트릿을 써야만할때가 있다.

ex)벡터를 이용하여 여러가지 자료를 jsp페이지로 가져올때 반드시 for문과 같은 반복문 써야하는데,

반복문을 사용할땐 또 다시 스크립트릿을 써야한다.


이런 경우에 스크립트릿을 쓰지 않아도 되도록 도와주는 태그를 제공한다.


jstl-1.2.jar

uri="http://java.sun.com/jsp/jstl/core"


jstl.jar파일을 다운받아 톰캣 라이브러리에 넣어준 뒤에 jsp페이지 상단에 taglib로 임포트


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


톰캣 라이브러리에 넣었는데도 uri를 입력할때 보기가 뜨지 않는다면 WEB-INF - lib에 jstl-1.2.jar파일을 추가해준다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<%@ 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>
<body>
 
<!--""안에서 조건문은 인식하지 못하므로 EL태그 써주면 된다. -->
<c:if test=" ${ 4 > 3 } ">
 
안녕하세요
 
</c:if>
 
</body>
</html>
cs




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<%@ 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>
<body>
 
 
<!--EL문 사용을 위해 c:set 태그를 이용한 Attribute 변수 선언 -->
<c:set var="i" value="4" /> //var(variable)
<% 
request.setAttribute("i"4); //와 같은 기능을 한다.
자바코드를 쓰지 않기위해 위 태그 사용하여 변수 선언
%>
 
 
<c:if test=${ i > 3 } ">
 
안녕하세요
 
</c:if>
 
</body>
</html>




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<%@ 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>
<body>
<!-- 반복문  -->
 
<c:set var="sum" value="0" />
 
<!-- step은 몇씩 증가하는지 설정해줌, step을 안쓰면 자동으로 1씩 증가 -->
 
<c:forEach var="i" begin="1" end="10">
 
    <c:set var="sum" value="${sum=sum+i}" />
 
</c:forEach>
 
${sum}
 
</body>
</html>
cs


출력 결과 : 55



 step은 몇씩 증가하는지 설정해줌, step을 안쓰면 자동으로 1씩 증가

1
<c:forEach var="i" begin="1" end="10"  step="${i=i+2}">









'JSP > JSP & Servlet ' 카테고리의 다른 글

서블릿의 이해  (0) 2019.05.22
JSTL (Java Standard Tag Library)- 2  (0) 2019.05.21
EL(Expression Language) 사용법 -1  (0) 2019.05.21
JSP Web Programming : model2 방식  (0) 2019.05.21
파일 업로드  (0) 2019.05.21