3과목 평균구하기 프로세스

2023. 1. 17. 12:03JAVA

html form 태그 작성

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="sc.do" method="post">
	
		<table>
			<thead>
				<tr>
					<th>과목</th>
					<th>점수</th>
				</tr>
			</thead>
			<tbody>
				<tr>
					<td>국어</td>
					<td><input type="text" name="kor"></td>
					</tr>
					<tr>
					<td>영어</td>
					<td><input type="text" name="eng"></td>
					</tr>
					<td>수학</td>
					<td><input type="text" name="mat"></td>
				</tr>
				<tr>
					<td><input type="submit" value="전송"></td>
					<td><input type="reset" value="취소"></td>
				</tr>
			</tbody>
		</table>
	</form>
</body>
</html>

컨트롤러에 로직처리

package ez.web.controller;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/sc.do")
public class ScoreController extends HttpServlet {

	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


		//1.클라이언트의 요청정보 수집
		int kor = Integer.parseInt(request.getParameter("kor"));
		int eng = Integer.parseInt(request.getParameter("eng"));
		int mat = Integer.parseInt(request.getParameter("mat"));
		
		//2. 업무로직(비즈니스 로직) 처리
		int total = kor + eng + mat;
		double avg = total / 3.0;
		
		String strAvg = String.format("%.2f",avg);
		
		//3. 응답 로직 처리 (Presentation logic ==> view(jsp))
		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		
		out.println("총점 : " + total + "<br>");
		out.println("평균 : " + strAvg + "<br>");
	}

}

'JAVA' 카테고리의 다른 글

기초 - 자바 회원가입 로직 1장  (0) 2023.01.17
개발환경구축 - jdk 11 설치  (0) 2023.01.17
웹프로젝트 수동생성 방법  (0) 2023.01.17
MVC패턴  (0) 2023.01.17
DTO DAO 란 무엇인가?  (0) 2023.01.17