-
JSP 기초 문법백엔드/서블릿&JSP 2020. 11. 2. 01:50
JSP는 기본적으로 HTML를 기반으로 그 위에 자바 코드를 끼워넣는 식으로 실행된다.
그래서 실제로는 대부분의 변수 선언, 메서드 선언, 로직 등은 자바 언어로 짜게된다.
하지만 자바 코드를 HTML 사이에 끼워 넣을 때 필요한 문법이 몇 가지가 있다.
1. 스크릿트립(Scriptlet)
"<% %>"으로 시작하고 끝나는 태그.
JSP 문법의 가장 기본이 되는 태그다. 대부분의 JSP 문법 표현을 이 스크릿트립을 기본으로 한다.
"<% %>" 사이에 실행될 자바 코드를 입력하면 된다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <%! String name = "홍길동"; %> <%! public int plus(int a, int b){ return a+b; } %> <!-- 스크립트릿( 변수선언, 메서드 등에 대한 실행 가능 ) --> <% int a = 5; %> <% int b = 5; %> <% plus(a,b); %> <!-- 10 출력 --> <% if(5>1){ System.out.println("5는 1보다 크다"); } %> <!-- "5는 1보다 크다" 출력 --> </body> </html>
2. 선언부 (Declaration)
"<%! %>"는 변수, 메서드 등을 선언할 때 이용하는 태그다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <!-- 선언문(선언만 가능) --> <%! String name = "홍길동"; %> <%! public int plus(int a, int b){ return a+b; } %> </body> </html>
3. 표현부 (Expession)
"<%= %>"는 변수, 메서드 등의 실행에 관한 부분을 맡아 그 결과를 표현한다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <!-- 선언문(선언만 가능) --> <%! String name = "홍길동"; %> <%! public int plus(int a, int b){ return a+b; } %> <!-- 구현부 (변수 선언, 변수 및 메서드에 대한 실행 가능) --> <p><%= name %></p> <!-- "홍길동" 출력 --> <p><%= plus(5,5) %></p> <!-- 10 출력 --> </body> </html>
4. JSP 지시어
JSP 지시문은 서블릿 클래스의 전체 구조에 영향을 준다.
해당 JSP 파일을 어떻게 처리할지 정보 등을 기술한다.
이름
문법
설명
page
<%@ page ... %>
현재 JSP 페이지를 처리시 필요한 정보 기재
include
<%@ include ... %>
현재 JSP파일 안에 다른 HTML, JSP 문서를 포함
taglib
<%@ taglib ... %>
태그 라이브러리를 사용하기 위해 선언해주는 태그
5. JSP 액션 태그
JSP 문서 내에서 간단하게 다양한 구현을 할 수 있도록 만든 태그다.
jsp:include
<jsp:include>
다른 페이지를 현재 페이지에 포함하고자 할 때 사용
jsp:useBean
<jsp:useBean>
자바 빈즈 사용을 위한 객체 생성을 위해 사용
jsp:setProperty
<jsp:setProperty>
자바 빈즈 데이터를 입력하기 위해 사용
jsp:getProperty
<jsp:getProperty>
자바 빈즈 데이터를 얻어내기 위해 사용
jsp:forward
<jsp:forward>
현재 페이지에서 다른 페이지로 이동할 때 사용
jsp:plugin
<jsp:plugin>
자바 컴포넌트를 삽입하는데 사용
jsp:element
<jsp:element>
동적으로 XML 요소를 정의하는데 사용
jsp:attribute
<jsp:attribute>
동적으로 XML 요소를 정의하는데 사용
jsp:body
<jsp:body>
동적으로 XML 요소를 정의하는데 사용
jsp:text
<jsp:text>
JSP 페이지와 문서의 템플릿 텍스트를 작성하는데 사용
'백엔드 > 서블릿&JSP' 카테고리의 다른 글
세션과 쿠키(Session과 Cookie) (0) 2021.01.07 javax.servlet.http 패키지 (0) 2021.01.07 javax.servlet 패키지 (0) 2021.01.06 JSP(JavaServer Pages)란? (0) 2020.11.01 서블릿(Servlet)이란? (0) 2020.10.30