Java

2024.07.03 JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋ณธ JSP ๊ธฐ๋ณธ ํƒœ๊ทธ (์Šคํฌ๋ฆฝํŠธ๋ฆฟ, ์„ ์–ธ, ํ‘œํ˜„์‹)

์ •ํ›ˆ5 2024. 7. 3. 14:08

 

<aside>
๐Ÿ’ก ํ•™์Šต ๋ชฉํ‘œ

1. ์Šคํฌ๋ฆฝํŠธ๋ฆฟ์˜ ์ดํ•ด์™€ ํ™œ์šฉ 
JSP ํŽ˜์ด์ง€์—์„œ Java ์ฝ”๋“œ๋ฅผ ์ง์ ‘ ์‚ฝ์ž…ํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
2. ์„ ์–ธ๋ฌธ์˜ ์ดํ•ด์™€ ํ™œ์šฉ
JSP ํŽ˜์ด์ง€์—์„œ ๋ฉ”์„œ๋“œ๋‚˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
3. ํ‘œํ˜„์‹์˜ ์ดํ•ด์™€ ํ™œ์šฉ
JSP ํŽ˜์ด์ง€์—์„œ ๊ฐ’์„ ๊ฐ„๋‹จํžˆ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.
</aside>

 

  • ์Šคํฌ๋ฆฝํŠธ๋ฆฟ(Scriptlet): <% ... %> ํƒœ๊ทธ ์•ˆ์— Java ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ JSP ํŽ˜์ด์ง€์—์„œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ์„ ์–ธ(Declaration): <%! ... %> ํƒœ๊ทธ ์•ˆ์— ๋ฉ”์„œ๋“œ๋‚˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค.
  • ํ‘œํ˜„์‹(Expression): <%= ... %> ํƒœ๊ทธ ์•ˆ์— ๊ฐ’์„ ์‚ฝ์ž…ํ•˜์—ฌ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

class_jsp_v02 ํด๋”

index.jsp

<%@page import="java.util.Random"%>
<%@ 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>
	<h1>JSP ๊ธฐ๋ณธ ํƒœ๊ทธ ์˜ˆ์ œ</h1>
	
	<%-- ์ŠคํŠธ๋ฆฝํŠธ ๋ฆฟ: ํ˜„์žฌ ์‹œ๊ฐ„์„ ์ž๋ฐ” ์ฝ”๋“œ๋กœ ๊ฐ€์ ธ์™€์„œ ์ถœ๋ ฅํ•ด๋ณด์ž. --%>
	<p> ํ˜„์žฌ ์‹œ๊ฐ„ : <% 	
		java.util.Date now = new java.util.Date();
		// ํ•œ๊ตญ ์‹œ๊ฐ„ ํ˜•์‹์œผ๋กœ ํฌ๋งท(format) ์„ค์ •ํ•˜๊ธฐ
		java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd:mm:ss");
		String formattedDate = sdf.format(now);
		out.println(formattedDate);
	%>
	</p>
	
	<%-- ํ‘œํ˜„์‹ : ์ž„์˜์˜ ์ˆซ์ž๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ถœ๋ ฅ --%>
	<p>์ž„์˜์˜ ์ˆซ์ž: <%= new Random().nextInt() %> </p>
	
	<%-- ํ‘œํ˜„์‹ : ์ž„์˜์˜ ์ˆซ์ž๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ถœ๋ ฅ --%>
	<p> <%= getWelcomeMessage("ํ™๊ธธ๋™ - ํ—ˆ๊ท ") %> </p>
	
	<%-- ์„ ์–ธ๋ฌธ : ์‚ฌ์šฉ์ž ์ •์˜ ๋ฉ”์„œ๋“œ ์„ ์–ธ --%>
	<%!
			public String getWelcomeMessage(String name){
			return "ํ™˜์˜ ํ•ฉ๋‹ˆ๋‹ค. " + name + "!!!";
		}
	%>
	
	<%
		Integer visitCount = (Integer)application.getAttribute("visitCount");
		if(visitCount == null) {
			visitCount = 1;
			
		} else {
			visitCount+=1;
		}
		
		application.setAttribute("visitCount", visitCount);
	%>
	
	<p> ํ˜„์žฌ ํŽ˜์ด์ง€ ๋ฐฉ๋ฌธ ํšŸ์ˆ˜ : <%=visitCount %> </p>
	
	<%
		int second = new java.util.Date().getSeconds();
		String bgColor;
		if(second < 20 ){
			bgColor = "#FFDDC1";
		} else if(second < 40) {
			bgColor = "#FFFFC1";
		} else {
			bgColor = "#C1FFC1";
		}
	%>
	
	<style>
		body {
			background-color: <%=bgColor %> ;
		}
		
	</style>
	
	

</body>
</html>

 

 


class_jsp_v03 ํด๋” ์ƒ์„ฑ

์‹ค์Šต ์ฝ”๋“œ 2 - cm ๋‹จ์œ„๋ฅผ ์ธ์น˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ธฐ๋Šฅ ๋งŒ๋“ค์–ด ๋ณด๊ธฐ

์š”๊ตฌ ์‚ฌํ•ญ - ๋‹จ์œ„ ํฌ๋งทํ„ฐ ๊ธฐ๋Šฅ๋„ ํ•จ๊ป˜ ์ถ”๊ฐ€ ํ•˜๊ธฐ

(์ œ๋Œ€๋กœ ์•ˆ๋งŒ๋“ค์–ด์ง)

 

header.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>
		<h1>CM๋ฅผ ์ธ์น˜๋กœ ๋ณ€ํ™˜</h1>
		<li> <a href= "form_page.jsp">์ด๋™</a> </li>

 

form_page.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
	
	
	<%@ include file="header.jsp" %>
	
	<form action="result.jsp" method="POST">
		<label for="cm"></label>
		<input type="text" id="cm" name="cm" required="required">
		<button type="submit">์„œ๋ฒ„๋กœ ์ œ์ถœ</button>
	</form>
	
	<%@ include file="footer.jsp" %>

 

footer.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

<p>footer</p>

</body>
</html>

 

result.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>
	
	<%
		// ์ž๋ฐ” ์‹คํ–‰ ์ฝ”๋“œ
		// request ๊ฐ์ฒด์—์„œ ๊ฐ’ ์ถ”์ถœํ•˜๊ธฐ
	
		String cm = request.getParameter("cm");
	
		
		
		if(cm != null ){
		int a = Integer.parseInt(cm);
			out.println("๋ณ€ํ™˜๊ฒฐ๊ณผ ");
			out.println("<br>");
			String format = String.format("%.3f", a / (2.54));
			out.println(format);
			out.println("<br>");
			out.println(a / (2.54));
			out.println("<br>");
			out.println( (int)(a / (2.54)) );
		} else {
			out.println("<p> ๋‹ค์‹œ ํ•ด๋ณด๊ธฐ</p>");
		}
	%>
	
	<!-- ๋‹ค์‹œ ์ด์ „ํŽ˜์ด์ง€๋กœ ๋˜๋Š” (ํŠน์ • ํŽ˜์ด์ง€๋กœ ์ด๋™)์ฒ˜๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด  -->
	<a href="form_page.jsp">Back</a>

</body>
</html>