JSP

[JSP] JSP 태그

ZZJJing 2022. 12. 28. 17:52

* JSP 태그 : JSP 코드 내에 JAVA 코드를 삽입하여 사용할 수 있게 해주는 태그

 

* JSP 태그의 종류 

 # 지시자 태그

 # 선언부(Declaration) 태그 

 # 스크립트릿 (Scriptlet) 태그 

 # 표현식 태그 (Expression) 

 

 

 

 # 지시자 태그 

<%@ page 태그 %> 

보통 JSP 페이지 맨 상단에 위치 하며 해당 페이지의 전체적인 속성을 지정 

- 엔코딩이나 콘텐츠 타입을 지정한다.

- 사용할 JAVA파일이 있을때 import 하여 JSP페이지에서 사용 할 수 있게한다. 

<%@ page language="java" contentType="text/html;charset=utf-8" pageEncoding="utf-8" %>
<%@ page import="java.util.*" %>

<%@ include 태그 %> 

[<jsp:include> 액션태그처럼 JSP 액션 태그를 사용하는 경우는 

다른 JSP 파일을실행한 후 결과를 현재 위치에 포함하는 방식이지만 

아래의 <%@ include  file = "" %>

include 디렉티브는 다른 파일 내용을 아예 가져와서 붙인 다음 하나의 파일처럼

통으로 JSP파일을 java파일로 변환 및 컴파일 하는 방식이다. ]

 

중간에 다른 JSP 페이지를 삽입할 때 사용하며 어느 부분이든 

넣고 싶은 곳에 사용하면 된다. 

상대 경로로 파일 위치를 지정해주어야 한다.

( 상위 위치 ' ../ ' , 같은 경로 ' . ' , 하위경로 ' / ' )

<body>
	<%@ include file="../inc/header.jsp" %>
	<div id="uiPage">
		<%@ include file="../inc/sidebar.jsp" %>
	</div>
</body>

<%@ taglib 태그 %> 

JSTL 태그 라이브러리를 사용하기 위한 JSP 태그 

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

 

 # 선언부(Declaration) 태그 

<%!  %>

JAVA 페이지처럼 이 태그 안에서는 자바 전역 변수 및 함수를 선언 할 수 있다. 

보통 해당 페이지에서 공통적으로 필요한 JAVA 함수가 있을 때 사용한다.

운영하며 전역변수는 잘 사용할 일이 거의 없었다.  스크립트릿에서 거의 지역변수를 지정해 사용 했다.

<!-- 공백을 없애주는 간단한 예시 -->

<%!
  public String rtnName(String name) {
	name = name.replace(" ","");
    return name;
  }
%>

 

 # 스크립트릿 (Scriptlet) 태그 

<%  %> 

JAVA 코드를 실행 할 수 있게 하는 태그다.

지역변수 선언, 연산, 제어문, 출력문등 다 스크립트릿 안에서 사용 할 수 있다. (함수선언은 안됨) 

HTML 태그 중간 중간에 심어서 사용도 가능하다. 

JSP에 심는 JAVA 코드이기때문에 이 스크립트릿을 최대한 줄이기 위해

스프링 같이 프레임워크를 사용할 때는

JSTL을 사용하는 경우가 많다.

<%
  String a = "a"; 
  String b = "b";
  
  for(int i=0; i<10; i++){
  	out.println("==TEST==" + a + "-" + b); 
  }
%>

 

 # 표현식 태그 (Expression) 

<%=  %>

변수의 값이나 함수의 결과값을 표현할때 사용한다. 

HTML 태그 사이에 들어가게 표현 가능하다. 

<%
	String ab = "ab"; 
%>

<div>
   <h2><%= ab %></h2>
</div>

 

'JSP' 카테고리의 다른 글

JSP 날짜 비교  (0) 2023.08.09
자주쓰는 JSTL 정리  (0) 2023.02.02