스크립트 태그 / 선언문 / 스크립트릿 / 표현식

조수경·2022년 1월 2일
0

JSP

목록 보기
1/45
post-thumbnail

<정리>

  1. 스크립트 태그
    1) 선언문(<%!...%>) : 자바 변수, 메소드 정의할 때 쓰임
    2) 스크립트릿(<%...%>): 자바 로직 코드 작성
    3) 표현식(문)(<%=...%>): 변수/계산식/메소드호출 결과를 문자열로 출력

    2. 선언문
    1) 선언문 태그에 선언된 변수와 메소드는 JSP 페이지 임의의 위치에서 선언 가능
    2) 그 변수는 전역변수가 되고, 그 메소드는 전역 메소드로 사용됨

  2. 스크립트릿
    1) 모든 일반 텍스트, HTML태그, JSP요소는 스크립트릿 태그 외부에 있어야 함 -> 자바의 영역이기 때무네!!!

  3. 표현식
    1) 선언문, 스크립트릿 에서 선언된 변수/메소드반환값을 외부로 출력 가능
    2) 표현식은 스크립트릿 내부에서 사용 가능할 수 없으므로 out.print() 메소드를 사용한다.
    3) 표현식에 작성된 모든 자바 코드의 값은 문자열로 변환되어 웹 브라우저에 출력된다.

<%@ 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>

<h2>Scripting Tag</h2>
 <%!
    //전역변수
    int count = 3;
    //대문자 와라 단, 소문자로 변경될 것임
    //data : 매개변수(파라미터를 받아주는 변수)
    //String ma... : 리턴타입
    String makeItLower(String data){
       return data.toLowerCase();
    }
 %>
<%
   for(int i=1;i<=count;i++){
      out.print("이선우 : " + i + "<br />");
   }
%>

<%=makeItLower("Hello 이선우!") %> 
 
</body>
</html>


<%@ 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>
<!-- 스크립트릿 -->
<%
  //전역 메소드 호출
  out.print(myMethod(0));
%>

<!-- 선언문 태그 -->
<%!
  public int myMethod(int count){//매개변수에 0이 할당됨
	
	//전위증가
	return ++count;//1부터 먼저 증가하고 처리됨
}

%>


</body>
</html>

1

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scripting Tag</title>
</head>
<body>
<%!
 int sum(int a, int b){
	return a + b;
	
}


%>
<!-- 문제 : 다음을 해결해보자 -->

<%
  out.print("2+3="+sum(2,3));
%>

</body>
</html>

2+3=5

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scripting Tag</title>
</head>
<body>
<!-- 다음을 해결해보자 -->
<!-- 스크립트릿: 변수만 들어올 수 있음 -->

<%
   out.print(makeItLower("Hello 허민정 슈퍼 개발자!"));//3.다시돌아감

%>

<!-- 선언부: 변수, 메소드 -->
<%!
String makeItLower(String data){//1.문자열을 매개변수로 받아서
	return data.toLowerCase();//2.리턴된다음
	
}
%>

</body>
</html>

hello 허민정 슈퍼 개발자!

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scripting Tag</title>
</head>
<body>
   <p>오늘은 몇일?<%=new java.util.Date() %></p>
   
   <%
       int a = 10;
       int b = 10;
       int c = 10;
     
   %>
   <p>a+b+c : <%=a+b+c%></p>
</body>
</html>

오늘은 몇일?Sun Jan 02 13:37:34 KST 2022
a+b+c : 30

profile
신입 개발자 입니다!!!

0개의 댓글