코딩 공부/기술면접

백앤드 기술면접 - JSP [1]

유미._. 2023. 6. 9. 15:33
728x90

 

🔥 Servlet의 동작 과정

 

사용자의 URL 요청 → xml로 요청한 URL과 Servlet 맵핑 →  request, response 객체 생성 →  서블릿 인스턴스와 스레드 생성 →  service 메서드 호출 →  Http 요청 방식에 따라 doGet() 혹은 doPost() 호출 →  사용자의 요청을 받아 데이터를 받고 해당 결과를 response객체로 사용자에게 넘겨주고 Request와 Response객체 소멸 후 스레드 종료

 

 

🔥 GET/POST방식의 차이점

 

** GET 방식

 

- GET 방식은 정보 조회를 위한 메서드이다. (select)

 

- URL의 끝에 요청한 정보를 붙여서 전송한다.

 

- 사용자가 무엇을 요청했는지 한눈에 볼 수 있다는 장점이 있지만, 보안성이 낮아진다.

 

- 한번에 전송할 수 있는 데이터의 양이 제한이 있다. (주소값 + 파라미터 255자)

 

- 캐싱이 가능하기 때문에 POST 방식보다 빠르다. (캐싱이란 조회한 결과를 임시로 저장하는 것을 의미한다.)

 

 

 

** POST 방식

 

- 서버의 값이나 상태를 바꾸귀 위한 메서드이다. (insert,update,delete)

 

- 요청정보를 body에 숨겨서 전달하기 때문에 GET 방식 보다 보안성이 좋다.

 

- 많은 양의 정보를 보내는데 유용하다.

 

 

🔥 쿠키와 세션의 차이

 

쿠키와 세션을 사용하는 이유 : Http 프로토콜의 특징이자 약점을 보완하기 위해서 사용한다.

 

 

** 저장 위치

 

- 쿠키는 클라이언트(브라우저)에 메모리 또는 파일에 저장하고, 세션은 서버 메모리에 저장된다.

 

 

** 보안

 

- 쿠키는 클라이언트 로컬(local)에 저장되기도 하고 특히 파일로 저장되는 경우 탈취, 변조될 위험이 있고, Request/Response에서 스나이핑 당할 위험이 있어 보안이 비교적 취약하다.

반대로 Session은 클라이언트 정보 자체는 서버에 저장되어 있으므로 비교적 안전하다.

 

 

** 라이프 사이클

 

- 쿠키는 앞서 설명한 지속 쿠키의 경우에 브라우저를 종료하더라도 저장되어 있을 수 있는 반면에 세션은 서버에서 만료시간/날짜를 정해서 지워버릴 수 있기도 하고 세션 쿠키에 세션 아이디를 정한 경우, 브라우저 종료시 세션아이디가 날아갈 수 있다.

 

 

** 속도

 

- 쿠키에 정보가 있기 때문에 쿠키에 정보가 있기 때문에 서버에 요청시 헤더를 바로 참조하면 되므로 속도에서 유리하지만, 세션은 제공받은 세션아이디(Key)를 이용해서 서버에서 다시 데이터를 참조해야하므로 속도가 비교적 느릴 수 있다.

 

 

🔥 HTTP Method 4가지 설명

 

1. GET (Read) - URI 형식으로 웹 서버 측에 데이터를 요청할 때 사용

 

2. POST (Create) - 사용자가 데이터를 전달하여 해당 데이터를 저장할 때 사용

 

3. PUT (Update) - 사용자가 보낸 데이터로 이미 있는 데이터를 수정할 때 사용

 

4. DELETE (Delete) - 사용자가 보낸 데이터로 이미 있는 데이터를 삭제 할 때 사용

 

 

🔥 Rest API

 

HTTP 프로토콜의 장점을 살려 그 기반으로 만든 아키텍처이다.

사용자가 보낸 URL을 이용하여 데이터를 메소드로 구분하여 보낸 데이터를 조회, 수정, 추가, 삭제 중 어떤 행동을 할 것인지 명확하게 맞춰주는 것이다.

 

 

🔥 XML과 JSON의 장단점

 

XML의 장점

1. 태그 구조로 되어있어 작성하기 간편하다

2. 태그를 직접 만들어 사용할 수 있으며 해당 내용에 대한 명시를 잘 하면 한눈에 알아보기 쉬워 가독성이 좋다.

 

XML의 단점

1. 실 데이터만 들어가는 것이 아니기 때문에 문서의 양이 길어진다.

2. JSON에 비해 복잡하다

 

JSON의 장점

1. 내용이 함축적으로 최소한의 정보만을 가지고 있어 XML에 비해 용량이 적고 속도도 빠르다.

2. 저장된 구조가 배열형식 및 객체구조로 이루어져 있어서 효율적으로 데이터를 사용 할 수 있다.

 

JSON의 단점

1. 내용이 함축적이고 구분이 잘 되어 있지않아 한눈에 알아보기 어렵다.

2. 데이터 타입을 따로 지정할 수 없어 많은 양의 데이터를 처리하기에는 어렵다.  

 

 

 

 

728x90
반응형