Servlet

오늘도 코딩중!·2023년 3월 20일
0

Servlet

목록 보기
1/4

Servlet 이란?

ervelet 웹 서비스를 위한 자바 클래스
(자바를 이용하여 웹을 만들기 위해 필요한 기술)=동적 웹페이지를 만들 때 사용되는 자바 기반의 웹 애플리케이션 프로그래밍 기술이다.

웹 프로그래밍에서 클라이언트의 요청을 처리하고 그 결과를 다시 클라이언트에게 응답하는 servelet

  • 자바 어플리케이션 코딩을 하듯, 엡 브라우저용 출력화면(html)을 적용하는 기술

Servlet 동작 방식

  1. http request(http 요청)
  2. 서블릿 콘테이너(WAS)가 요청을 받아서 객체를 생성( HTTPServletRequest, HttpServeletResponse)
  3. Web.xml에서 서블릿을 분석하고
  4. 찾은 서블릿을 바탕으로 service를 진행하고,
  5. client에 뿌려준다.

서블릿의 요청을 받아주고, 응답을 할 수 있게 끔해준다.
웹서버 소켓과 통신을 해서(apache-Tomcat)

Tomcat이란?

jsp와 통신할 수 있게 끔 환경을 만들어주는 프로그램.

WAS: Web Application Server 웹 어플리케이션 서버의 줄임말
웹서버에서 동적으로 오는 요청을 처리해 주는 서버이다.

웹 서버에 정보를 보낼 수 있는 form태그.
form 태그에서 action, method =“get”>
안전하게 전달하는 것.

클라이언트가 서버로 요청을 보내오는 방식

  • Get방식
  • Post방식

Get방식의 특징.

  • 조회의 용도로 사용한다.
  • 쿼리스트링 :url뒤에 클라이언트가 보낸 데이터가 같이 포함되어있는 것(보안에 취약)
  • 캐싱이 이뤄지지 않았다. = 브라우저 히스토리에 남는다(북마크, 즐겨찾기 등등이 된다)
  • http보내는 방식:get방식은 헤더를 보내며 노출이 된다.

Post 방식의 특징

Servlet 방식의 구현

  1. html, css를 구현한 후, form 태그 안에서 method 방식을 post, get으로 지정한다.
  2. Dynamic Web Project를 만들어 아파치 Tomcat을 연동한다

  1. Next를 눌러 source folders build path가
    ->src\main\java인지 확인하고
    default output folder를
    ->src/main/webapp/WEB-INF/classes로 지정한다.

  1. 마지막으로 Generate web.xml deployment descriptor를 활성화

Servlet을 구현하는 방법

  1. web.xml을 통한 연동.
  2. Annotation

1. WEB.XML을 이용한 연동방법.

필요한 코드

  1. servlet태그 내부에 servlet-name으로 서블릿 이름을 정의한다.
  2. servlet-class태그로 서블릿이 실행되는 루트를 적는다.
  3. servlet태그를 닫고, servlet-mapping태그를 써서 서블릿과 연동될 이름을 적는다.
  4. servlet태그에 적었던 servlet-name태그의 내용을 또 다시 작성하고,
    url-pattern태그를 써서 html의 action에 적었던 서블릿의 이름을 적어서 연동시킨다.

이 이미지에서

이 곳을 백단코드


이곳을 프론트 단 코드라고 한다.

Get방식에서 반드시 포함할 내용.

resp.setContentType("text/html; charset=UTF-8"); 이 코드를 파라미터를 전부 얻어온 후, 적용시킨다.

Post방식에서 반드시 포함할 내용.

맨 처음 req.setCharacterEncoding("UTF-8"); 로 인코딩 방식을 정의한다.

응답 데이터 문서 형식, 문자 인코딩 지정
resp.setContentType("text/html; charset=UTF-8");

profile
늦은만큼 코막고 달려!

0개의 댓글