티스토리 뷰

1번. 스크립트 태그 세 가지 종류에 대해 간단히 설명하시오.

스크립트 태그에는 선언문 스크립틀릿 표현문 총 세 가지의 태그 종류가 있다.

첫번째 선언문은 <%! %>의 형식을 가지고 있고 자바 변수나 메소드를 정의하는데 사용한다.

두번째 스크립틀릿은 <% %> 형식을 가지고 있고 자바 로직 코드를 작성하는데 사용한다.

세번째 표현문은 <%= %> 형식을 가지고 변수, 계산식, 메소드 호출 겨과를 문자열 형태로 출력하는데 사용한다.

 

 

 

2번. 선언문 태그와 스크립틀릿 태그의 차이점을 설명하시오.

선언문 태그는 변수뿐 아니라 메소드를 선언할 수 있다.

스크립틀릿 태그는 메소드 없이 변수만을 선언할 수 있다.

또한, 선언문 태그는 서블릿 프로그램으로 변환될 때 _jspService() 메소드 외부에 배치된다. (전역변수)

스크립틀릿 태그는 서블릿 프로그램으로 변환될 때 _jspServie() 메소드 내부에 배치된다. (지역변수)

 

 

 

 

3번. 애플리케이션 실행 결과에는 보이지 않는 JSP 주석 표기법은 무엇인가?

<%-- --%>

 

 

 

 

4번.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<%! String a = "Hello, Java Server Pages"; 
		public String getString(){
			return a;
		}		
	%>
	<% out.println(a); %>
	
</body>
</html>

 

선언문을 사용하도록 했기 때문에 선언문을 사용해주었다.

선언문은 변수나 메소드를 정의하는데 사용하므로 변수로 문자열을 만들어주었다.

그리고 전역 메소드 getString()을 사용하라고 했기 때문에 getString() 메소드를 만들어 리턴값으로 a를 주도록 했다.

그 후 스크립틀릿 태그를 사용하여 출력해주었다.

2-4 결과

 

 

5번.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<%java.util.Date a = new java.util.Date(); %>
	<%out.println("Todya : "+a); %>
	
</body>
</html>

 

2-5 결과

 

 

 

6번. 

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	Current Time : <%= java.util.Calendar.getInstance().getTime() %>
	
</body>
</html>

 

표현문 java.util.Calendar 클래스를 이용하여 현재 시간을 출력하기 위해 

표현문(<%=%>)을 사용하고 안에 java.util.Calendar클래스 안의 getInstance()하여 안의 값을 가져오고 그 중 getTime()하여 시간만 가져왔다.

 

2-6 결과

 

 

 

 

7번.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<nav class="navbar navbar-expand navbar-dark bg-dark">
		<div class="container">
			<div class="navbar-header">
				<a class="navbar-brand" href=#>Home</a>
			</div>
		</div>
	</nav>
	<%! String a = "Book Market Mall"; %>
	<%! String b = "Welcome to Book Market!"; %>
	<div class="jumbotron">
		<div class="container">
			<h1 class="display-3"> <%=a %></h1>
		</div>
	</div>
	<div class="container">
		<div class="text-center">
			<h3> <%=b %></h3>
		</div>
	</div>
</body>
</html>

 

부트 스트랩을 사용하기 위해 link를 가져와서 head 안에 넣어주었다.

선언문 태그를 사용하여 a와 b를 전역변수처럼 사용하도록 하였다.

적용하고자하는 부트스트랩에 맞는 클래스를 사용해주었다.

 

2-7 결과

 

 

 

 

 

 

 

 

 

 

 

 

* java.util.Date() 와 java.util.Calendar()에서의 getTime()메서드의 차이

 

java.util.Calendar 클래스에도 getTime() 메서드가 있다. 하지만 java.util.Date의 getTime() 메서드와는 다르게 동작한다.

java.util.Calendar의 getTime() 메서드는 현재 Calendar 객체가 나타내는 시간을 java.util.Date 객체로 반환한다. 이 Date 객체는 Calendar 객체가 나타내는 시간을 표현한다.

 

Calendar cal = Calendar.getInstance();
Date date = cal.getTime();

 

위의 코드에서 cal.getTime()는 Calendar 객체 cal이 나타내는 시간을 Date 객체로 반환한다. 이 Date 객체는 cal이 나타내는 시간을 표현한다.

따라서 java.util.Calendar의 getTime() 메서드와 java.util.Date의 getTime() 메서드는 이름은 같지만, 반환하는 값의 타입과 의미가 다릅니다. java.util.Date의 getTime()은 시간을 밀리초로 반환하고, java.util.Calendar의 getTime()은 시간을 Date 객체로 반환한다.


 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday