수업/JSP.Servlet

[JSP/Servlet] 6일 차

분홍야자 2023. 2. 15. 15:08

실습따라하기

- 아래와 같이 랜덤당첨 게임을 작성하라

 

Ex02createInput.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body align="center">
	<h1>랜덤당첨게임</h1>
	<form action="Ex02createInput.jsp">
		<fieldset>
			<legend>랜덤숫자입력</legend>
			<input type="number" name="num"><br> <input type="submit"
				value="생성하기">
		</fieldset>
	</form>
</body>
</html>

 

Ex02createInput.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 align="center">

	<%
		int num = Integer.parseInt(request.getParameter("num"));
	%>
	<form action="Ex02randomWinner.jsp">
		<fieldset>
			<legend>랜덤당첨 작성</legend>
			주제 : <input type="text" name="topic"><br>
			<% 	for(int i=0; i < num; i++) {
					out.print("아이템" + ( i + 1 ) + " : <input type=\"text\" name=\"item\"><br>");
				} 
			%> 
			<input type="submit" value="시작">
		</fieldset>
	</form>
</body>
</html>

 

Ex02randomWinner.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>Insert title here</title>
</head>
<body align="center">

	<%
		request.setCharacterEncoding("UTF-8");
		String topic = request.getParameter("topic");
		String[] items = request.getParameterValues("item");
		
		Random rd = new Random();
		String result = items[rd.nextInt(items.length)];
		
	%>
	
	<fieldset>
		<legend>랜덤당첨결과</legend>
		<%= topic%><br>
		<%= result%>
	
	</fieldset>
	
</body>
</html>