웹 Web/JSP & Servlet

JSP 기본 다루기 - 기본태그, 지시자

하나비 HANABI 2022. 1. 16. 23:49

교재 - 성윤정 <백견불여일타 JSP&Servlet : Oracle&Eclipse>

 

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 str = "안녕하세요";
	int a = 5, b = -5;
%>
</body>
</html>

 

<%! %>과 <% %> 동시활용 - body부분만

<body>
<%!
int a = -5, b = 9;
public int abs(int n) {
	if(n < 0) {
		n = -n;
	}
	return n;
}
%>
<%
out.print(a + "의 절댓값: " + abs(a));
%>
</body>

 

지시자

JSP지시자는 태그 안에서 @로 시작하며 page, include, taglib 3가지가 존재.

클라이언트의 요청에 의해 JSP페이지가 실행되면서 지시자에 언급되 설정을 JSP 페이지 전체에서 사용가능하도록 지시.

 

page : 해당 JSP페이지 전반적으로 환경을 설정할 내용 지정

include :  현재 페이지에 다른 파일의 내용을 삽입할 때 사용

taglib : 태그 라이브러리에서 태그를 꺼내와 사용할 수 있는 기능 제공

 

 

include 활용 예

<footer.jsp>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<hr>
<style>
div{
background: skyblue;
}
</style>
<div id = "footer">
여기는 footer.jsp 입니다 룰루랄라
</div>
</body>
</html>

 

<08_sub.jsp>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSP</title>
</head>
<body>
<h3> 서브 페이지 </h3>
<%@ include file = "footer.jsp" %>
</body>
</html>

 

 

JSP만 이용 - 로그인하여 페이지 이동

 

<04_login.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>
<form action = "04_logintest.jsp" name = "loginPage">
아이디: <input type = "text" name = "id"> <br>
암 호: <input type = "password" name = "pw"> <br>
<input type = "submit" value = "로그인" name = "login"/>
</form>
</body>
</html>

 

<04_logintest.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 id = request.getParameter("id");%>
<%=id %>님 환영합니다
</body>
</html>