ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 수 입력 받아서 홀수/짝수 판단하기
    JAVA/웹 프로그래밍 - JSP 2020. 11. 4. 22:29

    form과 form을 처리하는 jsp로 나눠서 구현한다. 
    form처리 jsp에는 결과만 넘겨받는다.
    그리고 form 처리 방식에서는 처리와 view를 같이 했다.
    즉, 처리하고 화면에 보여주는 일을 다 한다.

    그런데 지금은 아래의 양식으로 한다.

                             form-> form 처리(서블릿이 처리) -> 화면에 출력(html)

     

    결과를 전달 시에 setAttribute함수로 하고 dispatcher로 날린다.

     

    위를 이용해 홀수 짝수인지 처리 3단계로 처리한다.
    form에서는 url이 전달이 된다. 서브밋 버튼이 눌리면 oddnum.jsp가 oddnum_proc.jsp로 정보가 넘어간다.

     

    oddnum.jsp는 웹 페이지에서 수를 입력받고

    oddoddnum_proc.jsp 에서는 웹 페이지에서 입력 받은 수가 짝수/홀수 판정하고

    oddnum_view.jsp 에서는 결과를 출력한다.

     

    문제에 앞서 response.sendRedirect함수가 호출이 되면 어떻게 되는지 알아보자.

    redirect_naver.jsp를 실행하면 네이버에 접속하는 것을 볼 수 있다.

    이것이 response.sendRedirect함수의 기능이다.

    redirect_naver.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>
    <%
    	//	사이트로 이동
    	response.sendRedirect("http://naver.com");
    %>
    </body>
    </html>

     

     

     

    oddnum.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>
    	<form action="oddnum_proc.jsp">
    	<input type="text" name="x"><br>
    	<input type="submit" value="홀수짝수계산">
    	</form>
    </body>
    </html>

     

     

     

     

    oddoddnum_proc.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>
    
    <%
    	int x = Integer.parseInt(request.getParameter("x"));
    
    	String result = "짝수";
    	
    	if (x % 2 == 0)		result = "짝수";
    	else				result = "홀수";
    	
    	System.out.println("결과 : " +result);	//	콘솔 창으로 확인
    	
    	request.setAttribute("result",result);	//	채운 값을 oddnum_view.jsp로 넘긴다.
    	
    	
    	//	sendRedirect함수의 역할은 oddnum_view.jsp로만 이동을 한다.
    	//	이 때 값을 실어서 같이 넘겨야 한다면 RequestDispatcher를 이용해야 한다.
    	
    	//	아래의 두 문장이 없으면, 출력 jsp에서 그 결과값이 null이 나온다.
    	RequestDispatcher dispatcher=request.getRequestDispatcher("oddnum_view.jsp");
    	
    	dispatcher.forward(request,response);
    %>
    
    </body>
    </html>

     

     

     

     

     

    oddnum_view.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.getAttribute("result") %>
    </body>
    </html>

     

     

    oddnum.jsp 를 실행해보자. 각 각 7과 8을 입력했을 때의 내용이다.

    댓글

Designed by Tistory.