JSP (JavaServer Pages ) 개념

까만호랭·2023년 8월 18일
0
post-thumbnail

📖 JSP란?

JAVA 기반의 언어이며 HTML 정적 페이지에 자바 코드를 삽입하여 웹 서버를 동적으로 웹 브라우저에 보여주는 언어이다.

📌 스크립트릿 (scriptlet)

자바 코드를 자유롭게 기술하는 공간이며 <% 자바 코드 %> 이렇게 선언한다.

<h2>JSP(html + java) 연습</h2>
<%
// scriptlet : 이 영역에서는 자바 코드를 자유롭게 기술
String irum = "홍길동";

// 내장객체 out을 이용해 java를 클라이언트 브라우저에 출력
out.println(irum + "의 홈페이지 입니다.");

for(int i=1; i < 7; i++){
	out.print("<h" + i + ">");
	out.print("h태그 출력");
	out.println("</h" + i + ">");
}
%>
<hr/>

<% %>의 코드를 실행하면

위와 같이 코드가 출력되는 것을 페이지소스를 통해 볼 수 있다.
<% JSP의 내용 %> 가 사라지고 <h>태그를 이용한 것처럼 출력된 것을 볼 수 있다.

📌 표현식 (expression)

자바의 출력할 내용을 딱 한개만 쓰는 곳이며 표현식에에서는 ;를 쓰면 안된다.

<%
int a = 0, sum = 0;
do{
	a++;
	sum+=a;
}while(a < 10);
%>
<%= "10까지의 합은 " + sum %>

<% %>를 통해 먼저 자바 코드를 적고 <%= %>를 적음으로써 출력할 내용 한개만을 적은 것을 알 수 있다.

📌 선언문 (declaration)

자바의 메소드전역변수들을 구현 및 사용할 수 있게 해준다.

<%! String tel = "02-111-1111"; %>  
<br>
<%! 
public int add(int su1, int su2){
	return su1 + su2;
}
%>
<%= add(10,20) %>

위의 코드를 보면
선언문(declaration)을 사용해서 String tel를 클래스의 전역변수로 만들었다



여기서 <%! 를 해줘야함 : 메소드 안에 메소드가 있을 수 없기 때문에 클래스 안의 메소드를 만들어주는 형태를 해줘야함

즉, 선언문을 사용해서 클래스의 멤버 메소드를 만든 것을 알 수 있다.

📢 정리

변수 선언, 연산, 출력 등은 scriptlet과 expression을 사용하고
메소드 구현은 declaration을 사용한다!!

profile
남들과 함께 발자국을 남기는 까만호랭

0개의 댓글