방식

GET

1) 주소창에 직접 원하는 데이터를 적거나 링크를 클릭해서 호출, 특정한 정보를 조회하는 용도

2) 브라우저에 따라 길이에 제한 있음

 

POST

1) 입력 화면에서 필요 내용 작성 후 '전송' 과 같은 버튼을 클릭해 호출

2) GET 방식에 비해 많은 양의 데이터 전송 가능

 

 

요청과 응답

요청(Request) : 브라우저에서 서버에 데이터를 요구

응답(Response) : 브라우저에서 요구한 데이터에 대한 답변 데이터

 

 

Servlet

서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스

일반 자바 프로그램과는 달리 독자적으로 실행 못하고 톰캣과 같은 JSP/Servlet 컨테이너에서 실행됨

 

 

 

실습 : 덧셈 계산기 만들기

먼저 HTML을 (제목은 : calc.html) 만들어 두개의 숫자를 입력할 text input을 만들고, 전송하기 버튼을 만든다. get 방식을 이용하기로 했다.

 

 

 

자바 프로그램을 사용. Calculation 클래스를 만들고, HttpServlet의 상속을 받게 한다. doGet 메서드를 오버라이딩 해서 만든다.  req(요청).getParameter로 html에서 name 요소를 이용하여 불러오게 한다. 그리고 그것을 num1, num2 변수에 저장한다. 그리고 저장한 변수들(문자)을 숫자형으로 바꿔 서로 더한 뒤, sum 변수에 집어 넣는다. 그럼 덧셈 완성

 

resp 파라미터(응답)에 setContentType()을 이용해 클라이언트에 전송할 데이터 종류(마임 타입)를 지정한다. writer 객체를 만든 뒤, println을 이용하여 정보 전달 시(전송 버튼 누를 시) 화면에 나타날 html을 작성한다. 덧셈이니 (? + ? = ?) 이런 식으로 화면에 나타나게끔 작성하였다.

 

 

 

Web.xml로 가서 매핑을 한다. url-pattern을 /calc로 지정하였고, 이것을 맨 처음 캡쳐한 html로 가서 form의 action 요소에 붙여넣기 한다. 그럼 이제 완성. RUN을 누르고 실행한다.

 

 

 

calc.html로 만들었으니 인터넷창에 localhost:8080 주소가 뜨면 http://localhost:8080/calc.html 경로로 이동

 

 

 

숫자를 넣고 전송(요청)하면 사진과 같이 출력(응답) 된다. 응답된 html의 주소창을 눌러보면

http://localhost:8080/calc?num1=3&num2=12 이렇게 뜬다. get 방식이니, 주소창에 입력한 정보가 조회된다.

 

 

 

 

+ Recent posts