View 에서는 JAVA 언어를 거의 사용 하지 않는다.
(정말로, 어쩔 수 없는 경우에만, 사용할 수 있는데,
이런 경우는,
M 또는 C 파트에서 잘하지 못해서 V에서 처리해버리는 그런 느낌인 상황 이다.)
그러면, View 에서 JAVA 언어와 같은 "기능" 을 가진 태그를 사용 하고 싶은데,
어떻게 해야 할까 ?
"기능을 가진" 태그 >> JSTL 이다.
JAVA의 기능을 가졌기에, JAVA의 조건문, 반복문 등을 유사하게 사용 할 수 있다.
JSTL은 태그 라이브러리 이기 때문에,
외부로 부터 .jar 파일을 가져와서 import 를 해서 사용 한다.
아래는 JSTL에서 주로 사용되는 모듈과 태그의 예시 이다.
Core 모듈
- <c:out>: 변수나 표현식의 값을 출력 한다.
- <c:set>: 변수에 값을 할당 한다.
- <c:if>: 조건문을 실행 한다.
- <c:choose>, <c:when>, <c:otherwise>: 다중 조건문을 실행 한다.
- <c:forEach>: 컬렉션을 반복하며 태그 내부의 코드를 실행 한다.
- <c:url>: URL을 생성 한다.
- <c:import>: 외부 페이지를 가져 온다.
XML 모듈
- <x:out>: XML 요소의 값을 출력 한다.
- <x:set>: XML 요소에 값을 할당 한다.
- <x:forEach>: XML 요소를 반복하며 태그 내부의 코드를 실행 한다.
SQL 모듈
- <sql:setDataSource>: 데이터베이스 연결에 필요한 정보를 설정 한다.
- <sql:query>: SQL 쿼리를 실행하고 결과를 저장 한다.
- <sql:param>: SQL 쿼리의 매개변수 값을 설정 한다.
- <sql:update>: SQL 업데이트 문을 실행 한다.
Formatting 모듈
- <fmt:formatDate>: 날짜를 형식화 한다.
- <fmt:parseNumber>: 문자열을 숫자로 변환 한다.
- <fmt:message>: 다국어 지원을 위해 메시지를 출력 한다.
이 외에도 JSTL에는 다양한 태그와 기능이 있다.
JSTL 문법을 사용하려면 JSP 페이지에서 JSTL 태그를 사용할 수 있도록,
JSTL 라이브러리를 포함해야 한다.
또한, JSP 페이지의 상단에 다음과 같이 JSTL 태그 라이브러리를 선언 해야 한다.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
[ JSTL ]
JSTL의 정식 명칭은,
자바서버 페이지 표준 태그 라이브러리(JavaServer Pages Standard Tag Library)이고,
줄여서 JSTL이라 부른다.
JSTL은 Java EE 기반의 웹 애플리케이션 개발 플랫폼을 위한 컴포넌트 모음이다.
JSTL은 XML 데이터 처리와 조건문, 반복문, 국제화와 지역화와 같은 일을 처리하기 위한,
JSP 태그 라이브러리를 추가하여 JSP 사양을 확장했다.
JSTL은 JSP 페이지 내에서,
자바 코드를 바로 사용하지 않고 로직을 내장하는 효율적인 방법을 제공한다.
표준화된 태그 셋을 사용하여 자바 코드가 들락거리는 것보다,
코드의 유지보수와 응용 소프트웨어 코드와
사용자 인터페이스 간의 관심사의 분리로 이어지게 한다.
아래의 파일을 삽입 해야 한다.

본인의 톰캣이 설치 되어 있는 폴더 내부에 lib 폴더로 , 해당 .jar 파일들을 넣는다.
그리고, 본인은 이클립스를 사용 하고 있는데, 이클립스 내부의 resource 폴더에도,

해당 폴더를 넣어 두었다.
이 폴더 내부에 있는 아래의 폴더에도 .jar 파일을 넣어 준다.

그리고 마지막으로,

다이나믹 웹 프로젝트 내부에 lib 폴더에도 해당 .jar 파일들을 직접 삽입 해준다.
'Front-end (국비) > 이론' 카테고리의 다른 글
23.07.04 수업 정리 (JSTL 태그와, EL식) (0) | 2023.07.04 |
---|---|
EL (Expression Language) 식 (0) | 2023.07.04 |
23.06.29 수업 정리 3 (JSP / Java Server Pages) (0) | 2023.06.29 |
23.06.29 수업 정리 2 (JSP / Java Server Pages) (0) | 2023.06.29 |
23.06.29 수업 정리 (JSP / Java Server Pages) (0) | 2023.06.29 |