1.구구단을 gugudan.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>
<%
for (int x =1; x <10; x++){
out.print("=====" + x + "단" + "=====<br />");
for (int y = 1; y < 10; y++ ){
out.print(x + " x " + y + " = " + x*y + "<br>");
}
out.print("<hr>");
}
%>
</body>
</html>
2. 아래의 용어를 설명하시오.
- 스크립트릿
자바 서버 페이지(JSP) 기술에서 스크립틀릿(scriptlet)은 HTML과 같은 JSP 코드에 내장된 자바 코드의 한 부분이다. 스크립트릿은 <% %> 태그 내의 모든 것이다. 이 사이에서 사용자는 유효한 스크립트릿, 즉 유효한 Java 코드를 추가할 수 있다.
애플스크립트에서 스크립틀릿은 작은 스크립트이다.
윈도에서 스크립트릿(scriptlet)은 HTML 코드와 다양한 스크립트 언어로 작성될 수 있는 스크립트를 포함하는 COM 구성 요소이다.
스크립트릿(scriptlet)은 RPM 패키지 관리 시스템에서 SPEC 파일에 포함된 스크립트이다.
<% java source code %>
- 선언문(declaration)
JSP 선언 태그는 필드 및 메서드를 선언하는 데 사용된다.
jsp 선언 태그 내부에 작성된 코드는 자동 생성 서블릿의 service() 메서드 외부에 배치된다.
따라서 요청할 때마다 메모리를 얻지 못한다.
<%! field or method declaration %>
- 표현식(expression)
JSP 식 태그 내에 배치된 코드는 응답의 출력 스트림에 기록된다. 따라서 데이터를 쓰기 위해 out.print()를 쓸 필요가 없다. 주로 변수나 방법의 값을 인쇄하는 데 사용된다.
<% java source code %>
3. 국어 영어 수학을 입력(grade.jsp)후 grade_result.jsp 에 총점 평균 학점이 나오도록 짜시오.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>grade</title>
</head>
<body>
<form action='grade_result.jsp' method="post">
국어 <input type="number" name='kor'>
영어 <input type="number" name='eng'>
수학 <input type="number" name='math'>
<input type='submit' value='결과'>
</form>
</body>
</html>
<%@page import="servletEx02.grade.Grade"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>grade_result</title>
</head>
<body>
<%
String getKor = request.getParameter("kor".trim()); //trim() removes meaningless spaces
String getEng = request.getParameter("eng".trim());
String getMath = request.getParameter("math".trim());
double kor = Double.valueOf(getKor);
double eng = Double.valueOf(getEng);
double math = Double.valueOf(getMath);
Grade grade = new Grade(kor, eng, math);
double sum = grade.getSum();
double avg = grade.getAvg();
char chgrade = grade.getGrade();
%>
합계 : <%= sum %>
평균 : <%= avg %>
등급 : <%= chgrade %>
</body>
</html>
package servletEx02.grade;
public class Grade {
private double kor;
private double eng;
private double math;
public Grade(double kor, double eng, double math) {
this.kor=kor;
this.eng=eng;
this.math=math;
}
public double getSum() {
double sum = kor + eng + math;
return sum;
}
public double getAvg() {
double avg = (double) getSum() / 3;
return avg;
}
public char getGrade() {
char grade = '가';
if (getAvg()>=90) {
grade = '수';
}
else if (getAvg()>=80) {
grade = '우';
}
else if (getAvg()>=70) {
grade = '미';
}
else if (getAvg()>=60) {
grade = '양';
}
return grade;
}
}