이전 포스팅에서 해당 JSP의 정보, 처리 방법을 제시하는 디렉티브 태그(Directives tag)들에 대해 알아보았다.
https://wintmoca.tistory.com/38
[JSP] JSP(Java Server Pages) 기초 개념과 특징, JSP 디렉티브
JSP 기초 개념 JSP란? Java Server Pages의 약자로, HTML 안에 JAVA를 구축해서 동적 웹 페이지를 생성하게끔 해주는 웹 어플리 케이션 도구이다. (클라이언트에게 정보를 받아서 변화되는 페이지를 구축)
wintmoca.tistory.com
JSP 기초 개념
JSP
란?
Java Server Pages의 약자로,
HTML 안에 JAVA를 구축해서 동적 웹 페이지를 생성하게끔 해주는 웹 어플리 케이션 도구이다.
(클라이언트에게 정보를 받아서 변화되는 페이지를 구축)
이번에는 HTML 구조 안에 JAVA를 기술하기 위해 사용하는 스크립트 태그(Script Tag)
에 대해 알아보자 😊
스크립트 태그
<% %> | 스크립트릿 태그(Scriptlet) | 변수 선언, 호출 등 모든 자바의 코드 사용이 가능하다(for문, 조건문 ...) |
---|---|---|
<%! %> | 선언 태그(Declaration) | 함수(메서드)를 선언하기 위한 태그 ex) <%! int sub(int a) { } %> // 메서드의 중괄호는 절대 생략 불가능 |
<%= %> | 표현 태그(Expression) | 지칭한 변수, 상수 등을 출력하기 위한 태그. 하나의 표현 태그에는 하나의 변수만 사용할 수 있다. |
스크립트 태그는 이렇게 3가지 태그를 기억하면 된다.
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>
</body>
</html>
HTML의 모습을 하고 있는 걸 확인할 수 있다.
우리는 여기서 JAVA의 코드를 이용해야 하는데, 이때 스크립트 태그를 이용하는 것이다.
<% 변수를 선언하는 공간 %>
<%! 메서드를 선언하는 공간 %>
<%= 변수나 상수를 출력하는 공간 %>
위와 같이 사용할 수 있다.
주의해야할 점은 <% %>에서 변수 선언 등 자바 코드 사용 후 자바와 마찬가지로
; 세미콜론을 사용해 닫아주어야 한다는 점과
<%= %>에서 출력해줄 때는 세미콜론을 사용하지 않는다는 점을 기억해야 한다.
그럼 배열을 출력하는 예시로 조금 더 자세히 확인해보자 !
// 배열에 2,4,6,8,10 데이터를 넣고 출력하기
<body>
<% int num[]=new int [5]; %> // 크기가 5인 배열 num 선언(선언 태그)
<% int a=2; %> // 정수형 변수 a 선언, 값 2 대입
<% for(int i=0; i<5; i++) {
num[i]=a; // 배열에 차례대로 a를 대입
a+=2; // 한 번 반복할 때마다 a의 값 2씩 증가
%><%= num[i] %> // 출력할 때는 표현 태그를 사용한다.
<% } %> // for문의 괄호를 닫아줄 때는 다시 스크립트릿 태그 사용
</body>
표현 태그 <%= %>는 한 태그에 하나의 변수만 사용할 수 있지만,
스크립트릿 태그 <% %>는 한 태그 안에 계속 이어서 작성이 가능하므로
출력하는 표현 태그 전까지 한 번에 작성할 수도 있다.
예시에서는 한 줄 씩 눈에 들어오도록 한 태그씩 사용해 주었다.
이렇게 html의 body 안에서 자바 코드인 변수와 for문을 사용할 수 있는 것이다 😆
<body>
<% String A="ABC"; %>
<input type="text" value="<%= A %>">
</body>
JSP는 html 코드와 java 코드를 함께 이용하기 때문에 두 코드가 섞이는 경우가 있다.
위 예시는 html의 input 태그의 value를 변수로 넣는 경우인데, value=A와 같이 적을 수 없다는 것을 주의해야 한다.
input은 html 영역이기 때문에 A를 변수가 아닌 문자 그대로 A로 인식해 A를 출력해버린다.
표현 태그를 함께 사용해 value=" "의 형태에 <%= 변수 %>로 사용하면,
해당 변수의 출력 내용이 value에 들어가게 된다🎉
'JSP, SERVLET' 카테고리의 다른 글
[JSP, SERVLET] 데이터 베이스 연동해서 로그인 성공 구현하기 (0) | 2023.04.27 |
---|---|
[SERVLET] 서블릿에 데이터 베이스 연동하기(SELECT 구문) (1) | 2023.04.27 |
[JSP] JSP(Java Server Pages) 기초 개념과 특징, JSP 디렉티브 (0) | 2023.04.24 |
[JSP,SERVLET] JSP에서 보낸 데이터 SERVLET에서 쿠키로 저장하기 (0) | 2023.04.20 |
[JSP,SERVLET] Select로 선택한 옵션 출력하기 (0) | 2023.04.17 |