2025.09.26 수업 내용 정리

2025. 9. 26. 17:27·Archive/TIL

1. 인터넷 네트워크 이해

2. 톰캣 11 다운로드

3. 톰캣 이클립스 연결 및 세팅

4. sevlet

- 웹서비스를 위한 자바클래스

- 자바를 사용해서 웹을 만들기 위해 필요한 기술

- 사용자의 요청을 받아서 처리하고 그에 해당하는 응답 페이지를 만들어서 사용자에게 다시 전송하는 역할을 하는 자바 클래스

ex) JDBC에서 controller 역할

 

4-1.경로

- front페이지에서 절대경로 → /로 시작하는 경로이며 /는 ip:port 경로

- front페이지에서 상대경로 → /로 시작하지 않는 경로이며 시작 위치는 현재 URL의 마지막 /경로

 

4-2. 요청 방식

- Get 방식

  • HTTP 요청 메서드 중 하나로 서버에서 정보를 가져올 때 사용되는 요청 방식
  • 요청 시 URL의 쿼리문자열(Query String)을 포함하여 데이터를 전송
    • 사용자가 입력한 값(데이터)을 서버에 보낼 때 URL에 노출하여 전달
    • 보안 유지가 어려움
    • 로그인이나 회원가입 같은 private 데이터가 포함된 요청에 경우 Get 방식은 부적합
  • 데이터 길이 제한이 있음
    • URL에 함께 전달되는 방식이기 때문에 데이터의 길이 제한이 있음, 하여 너무 긴 데이터는 절단되어 전달될 수 있음( 평균 2,000자 정도)
    • 게시판 작성 같은 경우 Get 방식이 부적합
  • 캐싱 기능 및 즐겨찾기 사용 가능
    • URL을 저장해둔 뒤 요청하는 방식
    • 검색 기능에 적합

-Post 방식

  • HTTP 요청 메서드 중 하나로 데이터를 생성/수정 요청할 때 일반적으로 사용하는 방식
  • 요청 시 URL의 Body 영역 내에 데이터를 포함시켜 전달
    • 사용자가 입력한 값들이 URL에 노출되지 않음
    • 보안 유지가 가능
    • 로그인이나 회원가입 같은 경우 Post 방식이 적합
  • Body영역은 전송하는 길이에 제한이 없음
    • 게시판 작성 같은 경우 Post 방식이 적합
  • 즐겨찾기가 가능하나 데이터를 활용할 수 없음
    • 기존에 봤던 응답 화면을 다시 볼 수 없음

4-2.servlet

Post 요청이나 Get 요청에 대해서 동일하게 응답

Get과 Post를 정하기 이전에 특정 URL로 요청이 되었다는 것은 특정 기능을 수행하겠다는 의미

결과는 같은 페이지를 출력, 응답하는 입자에서 다르게 작성할 이유가 없음

Get 방식으로 요청 시 doGet메서드를 실행하여 요청을 처리해 줌

톰캣이 서블릿 객체를 생성해서 메서드 호출까지 해줌

HttpServletRequest → 요청 시 전달된 애용들이 담겨있는 객체(사용자가 입력한 값, 요청 방식, 요청자의 IP, URL등)

HttpservletResponse → 요청을 처리 후 응답할 때 사용되는 객체(어떤 타입으로 응답할지, 어떤 값을 응답할지 등을 설정)

요청 처리를  위해서 요청 시 전달된 값을 추출

request의 parameter 영역 안에 전달된 값을 추출

requset.getParameter("키");

체크박스와 같이 여러 개의 값을 추출하고자 할 때 배열을 활용

 

이후 service > dao > db 

회원 추가에 대한 서비스 로직을 완료했다는 가정하에

결과는 1 또는 0으로 반환 → 추가 변경 삭제는 성공 여부가 반환되기 때문

 

위와 같은 결과에 따라 응답 페이지(html)을 만들어서 응답

즉, 여기 java 코드 내에서 사용자가 보게 될 응답 html을 작성

response 객체를 통해서 응답

 

4-2-1. 응답으로 출력할 내용은 html이고 문자셋은 UTF-8이다 →  선언

4-2-2. 응답받는 사용자와의 스트림을 연결 

4-2-3. 응답 HTML을 생성하는 과정을 JSP템플릿 엔진에 위임

- 단, 응답화면에서 필요로 하는 데이터를 잘 담아서 전달해 줘야 함

- 데이터를 전달하기 위한 공간 → request의 attribute영역

- request.setAttribute("키", "값");

 

4-2-4. 현재 요청을 JSP로 전달

- RequestDispatcher → 서블릿에서 다른 리소스(JSP, 또다른 서블릿)로 요청을 전달(포워드)하거나 기존 응답에 내용을 추가할 수 있게 해주는 객체

 

5. JSP

<% %> → 스크립틀릿(scriptlet): html 문서 내에서 자바 코드를 사용하고 싶을 때 쓸 수 있는 영역

페이지의 언어는 자바지만 컨텐츠타입은 html이라 html을 편하게 작성할 수 있음

그리고 화면에서는 객체로 호출받아 자바로 보임.

'Archive > TIL' 카테고리의 다른 글

[TIL] JPA 영속성 전이와 고아 객체: Cascade vs OrphanRemoval 정리  (0) 2025.12.16
[TIL] REST API 인증과 상태 관리: Session vs Token 정리  (0) 2025.12.09
[TIL] 리액트 핵심 이론 정리: 제이쿼리 차이, 클로저, 비동기  (0) 2025.12.05
[TIL] 리액트 라우팅과 전역 상태 관리: Router & Context API  (1) 2025.12.02
[TIL] 리액트 필수 개념 정리: 콜백 함수, 캡슐화, AJAX  (0) 2025.11.26
'Archive/TIL' 카테고리의 다른 글
  • [TIL] REST API 인증과 상태 관리: Session vs Token 정리
  • [TIL] 리액트 핵심 이론 정리: 제이쿼리 차이, 클로저, 비동기
  • [TIL] 리액트 라우팅과 전역 상태 관리: Router & Context API
  • [TIL] 리액트 필수 개념 정리: 콜백 함수, 캡슐화, AJAX
tlsgkstj
tlsgkstj
짱구의 성장 일기
  • tlsgkstj
    코딩하는 짱구
    tlsgkstj
  • 전체
    오늘
    어제
    • 분류 전체보기 (159)
      • About (1)
      • Projects (35)
        • Personal Projects (21)
        • Team Projects (14)
      • Engineering (20)
        • CS & Tools (0)
        • Backend Core (15)
        • Frontend (1)
        • Infra & Cloud (2)
        • AI & Tools (1)
      • Trouble Shooting & Issues (0)
      • Growth & Career (38)
        • Interview Prep (0)
        • Retrospectives (38)
      • Archive (65)
        • TIL (8)
        • Daily Dev Q&A (56)
  • 블로그 메뉴

    • 홈
    • About
    • Projects
    • Tech Stack
    • Dev Log
    • GitHub
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    커리어리셋
    spring
    데브페스트
    DevFestIncheon2025
    프로덕트개발자
    til
    REACT
    프로젝트회고
    devlog
    backend
    클로드코드
    network
    경기기후바이브코딩
    OrphanRemova
    Spring비교
    SpringBoot
    Project_Review
    jpa
    aws_s3
    java
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
tlsgkstj
2025.09.26 수업 내용 정리
상단으로

티스토리툴바