학점 변환기 예제
1. 다음과 같이 scoreTest.jsp를 작성합니다. 학점으로 변환할 시험 점수를 입력한 후 scoreResult.jsp를 전송합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>시험 점수 입력 페이지</title>
</head>
<body>
<h1>시험 점수를 입력해 주세요</h1>
<form method=get action="scoreResult1.jsp">
시험점수 : <input type=text name="score" /><br>
<input type="submit" value="학점변환">
</form>
</body>
</html>
2. 다음과 같이 scoreResult1.jsp를 작성합니다. 조건이 여러 개이르로 이번에는 <c:choose> 태그의 <c:when> 태그에 설정하여 학점을 변환합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<html>
<head>
<meta charset=”UTF-8">
<title>학점 변환 결과</title>
</head>
<body>
<c:set var="score" value="${param.score }" />
<h1>시험점수 <c:out value="${score}" /></h1><br>
<c:choose>
<c:when test="${score>=90 && score<100 }">
<h1>A학점입니다.</h1>
</c:when>
<c:when test="${score>=80 && score<90 }">
<h1>B학점입니다.</h1>
</c:when>
<c:when test="${score>=70 && score<80 }">
<h1>C학점입니다.</h1>
</c:when>
<c:when test="${score>=60 && score<70 }">
<h1>D학점입니다.</h1>
</c:when>
<c:otherwise>
<h1>F학점입니다.</h1>
</c:otherwise>
</c:choose>
</body>
</html>
3. http:localhost:8080/pro14/test04/scoreTest.jsp로 요청하여 시험 점수 입력 페이지에서 점수를 입력하고 학점변환을 클릭합니다.

4. 변환된 학점을 출력합니다.

하지만 현재는 입력한 시험 점수가 0~100점 사이인지 유효성 검사를 하는 기능이 빠져 있으므로 학점 변환기 프로그램을 조금 수정해 보겠습니다.
5. 학점 변환 시 <c:choose> 태그를 이용해 시험 점수 0~100점 사이인지를 먼저 체크한 후 전송된 시험 점수가 유효 범위이면 그 다음에 학점을 변환하도록 다음과 같이 scoreResult2.jsp를 작성합니다. 만약 유효 범위를 벗어나면 새로 점수를 입력하라는 메시지를 출력합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<html>
<head>
<meta charset=”UTF-8">
<title>학점 변환 결과</title>
</head>
<body>
<c:set var="score" value="${param.score }" />
<h1>시험점수 <c:out value="${score }" /></h1><br>
<c:choose>
<c:when test="${score>=0 && score<=100 }">
<c:choose>
<c:when test="${score>=90 && score<100 }">
<h1>A학점입니다.</h1>
</c:when>
<c:when test="${score>=80 && score<90 }">
<h1>B학점입니다.</h1>
</c:when>
<c:when test="${score>=70 && score<80 }">
<h1>C학점입니다.</h1>
</c:when>
<c:when test="${score>=60 && score<70 }">
<h1>D학점입니다.</h1>
</c:when>
<c:otherwise>
<h1>F학점입니다.</h1>
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<h1>점수를 잘못 입력했습니다. 다시입력하세요</h1>
<a href="scoreTest.jsp">점수 입력 창으로 이동</a>
</c:otherwise>
</c:choose>
</body>
</html>
6. http://localhost:8080/pro14/test04/scoreTest.jsp로 다시 요청하여 정상적인 시험 점수를 입력합니다.

7. 이번에는 시험 점수의 유효 범위인 0~100을 벗어나는 값을 일부러 입력합니다. 그러면 점수를 잘못 입력했으니 다시 입력하라는 메시지를 출력합니다.

'프로그래밍 언어 > 자바 웹' 카테고리의 다른 글
| 이미지 리스트 출력 예제 (0) | 2026.03.15 |
|---|---|
| 구구단 출력 예제 (0) | 2026.03.12 |
| Core 태그 라이브러리 실습 예제 (0) | 2026.03.06 |
| <c:out> 태그를 이용한 실습 (0) | 2026.03.03 |
| <c:redirect> 태그를 이용한 실습 (0) | 2026.02.28 |