[Servlet]request 와 response 사용

정연진·2021년 4월 8일
0

response 객체

public class Nana extends HttpServlet{
     public void service(HttpServletRequest request, 
                         HttpServletResponse response) throws IOException, ServletException{
    	 
    	 PrintWriter out = response.getWriter();
    	 
    	 for(int i=0; i<10; i++) {
    		 out.println("Hello servlet");//웹에 출력 
    	 }
     
     }
}

response 객체는 서버가 클라이언트에게 응답하는 역할을 가진 객체이다.
(출력도구)
response.getWriter()라는 메소드를 호출하여 PrintWriter형 변수 out으로 받아주었다.
gerWriter() 메소드는 "쓰기"를 통해 서버가 클라이언트에게 응답하겠다는 메소드이다.

for문을 통해 "Hello servlet" 메세지를 10번 출력해주었다.
실행 결과는 아래와 같다.

request 객체

클라이언트가 서버에게 "Hello servlet" 메세지가 출력되는 횟수를 전달하는 방법 또한 있다.
클라이언트가 서버에게 요청하는 역할을 가진 객체는 request이다.


public class Nana extends HttpServlet{
     public void service(HttpServletRequest request, 
      			HttpServletResponse response) throws IOException, ServletException{
    	 
    	 PrintWriter out = response.getWriter();
    	 
    	 int count=10;
    	 
    	 String c =request.getParameter("c");
    	 
    	 if(c!=null) {
    		 count = Integer.parseInt(c);
    	 }
    	 
    	 for(int i=0; i<count; i++) {
    		 out.println("Hello servlet");//웹에 출력 
    	 }
     
     }
}

이번에는 request 객체(입력도구)를 통해 "c"라는 parameter를 가져와서 String 변수 c에 넣어주었다.
getParameter 메소드는 String 변수를 매개변수로 가지며 반환값도 String이다.

사용자가 입력한 c의 값이 null이 아니라면 이를 int형으로 변환해주며
for문을 통해 c만큼 "Hello servlet" 메세지를 출력해준다.

위 이미지에서 ?c=3 부분을 url 뒷부분에 넣으면 메세지가 3번 출력되는 것을 볼 수 있다.
즉, 코드에서 3을 String으로 받아오고, int로 형변환해주는 과정을 통해 3번 메세지를 출력해준 것이다.

?c=5 를 입력한다면 5번, ?c=20 을 입력한다면 20번 출력된다.

아무것도 입력하지 않는 다면 count변수는 10을 유지하므로 10번 출력된다.

profile
열공해욧

0개의 댓글