반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Tags more
Archives
Today
Total
관리 메뉴

코딩몬

[스마트인재개발원] Servlet 기초 본문

JSP | Servlet

[스마트인재개발원] Servlet 기초

탄중이 2021. 6. 5. 22:26
반응형

Servlet ?

Servlet = Server + Applet

: Java를 기반으로 하는 Web Application Programming 기술

- Servelt을 사용하면 동적인 웹페이지 만드는 것이 가능하다

  (누가 들어왔는지에 따라 웹페이지로 발송되는 내용이 달라진다)

  • Client 의 요청에 동적으로 작동하고 응답은 HTML을 이용한다
  • Servlet은 HttpServlet 클래스를 상속받는다
  • .java 확장자를 갖는다
  • java Multi Thread

 

Service Method

: Web에서 프로그램을 실행하는 메소드

- JSP Servlet에서 Java에서의 main 역할을 하는것이 service 메소드 이다.

- 모든 Servlet Class에는 request객체와 response객체가 존재한다.

  (매개변수로 request와 response가 들어간다)

- request 객체와 response객체는 Interface로 선언되어있다

service method

 

  • request 객체

   : Client로부터 데이터가 넘어오면 데이터를 받아서 처리하는 객체

    - 클라이언트가 서버에 요청을 하는 순간 request 객체 안에 클라이언트에 대한 요청 정보가 다 담긴다

      (ex> 클라이언트의 주소, 보낸국가, 보낸시간, 보낸 정보 등…)

서버에 접속한 client들의 ip를 받는 코드

 

  • response 객체

     : Client에게 응답을 할 수 있게 해주는 객체

     - 응답에 대한 정보가 담긴다(ex> 데이터타입, 인코딩 등...)

한글 인코딩을 해주는 코드

 

 

 

Servlet URL Mapping

: Web browser에서 Servlet을 동작시키기 위해 실제 Java 클래스의 이름 대신, Servlet을 요청하기 위한 문자열을 Servlet 클래스와 Mapping(맵핑)시키는 것

 

  • URL Mapping을 하는 이유

 : Java 클래스는 URL이 없기 때문에 Java 클래스가 웹에서 실행되게 하기 위해서

   (Servlet 이 웹에서 실행되어야 하기 때문에 주소를 달아준 것)

 

- 웹은 URL을 통해 요청을 한다.

 

- 아무 수정을 하지 않았을 시 기본값으로 클래스명과 동일하게 URL Mapping이 된다

- 마음대로 수정이 가능하다

 

  •   수정방법

    1. @WebServlet(“”)안의 값을 바꿔준다

    2. Servlet생성시 next를 한 번 만 눌렀을 때 보이는 URL mappings 에서 값을 바꿔준다. 

 

  • URL Mapping의 장점

     1. 클래스 명이 길거나 복잡했을 때 간단하게 줄여줄 수 있다.

     2. 보안적 측면에서 클래스의 경로가 유출되지 않도록 바꿔줄 수 있다.

 

 

 

데이터를 전송하기위한 조건(Form 태그 조건) 중요!

 

  1. action : 값을 어디로 보낼지 주소값을 적는 부분 (form태그 안에 action 속성을 넣음)
  2. name : 어떤 값을 보내는지 이름 지정(input 태그 안에 name 속성을 넣음)
  3. submit : 값을 보내는 시점(버튼)(input 태그에 type을 submit으로 줌)

 

 

Web Page에 글쓰기(실습)

PrintWriter 객체

PrintWriter 객체를 이용하여 웹 페이지 상에 글을 써 줄 수 있으며, 쌍따옴표 안에 HTML 태그를 넣으면 해당 HTML태그가 적용되어 Web Page 상에 출력이 된다

 

  • 실습

사용자가 입력한 숫자 만큼의 칸을 만드는 테이블을 WebPage에 출력하세요

테이블 만들기 HTML 코드(MakeTable 으로 num을 전송해라)
num = 5

 

테이블 만들기 Servlet코드

* 주의! web에서는 데이터를 모두 String형태로 받아온다 -> 수 연산을 하고싶다면 Integer.parseInt를 해주자

 

결과화면

www.smhrd.or.kr

 

스마트인재개발원

4차산업혁명시대를 선도하는 빅데이터, 인공지능, 사물인터넷 전문 '0원' 취업연계교육기관

www.smhrd.or.kr

 

반응형
Comments