53일: .getInstance(), doGet의 종류, servlet 추가, VO, POJO, 패턴, JSTL

Jiwontwopunch·2022년 1월 26일
0

국비기록

목록 보기
53/121
post-thumbnail

2022.01.26.Wed.

✍ 복습

.getInstance()

최초에 할당된 하나의 메모리를 계속 쓰는 방식
우리가 잘 알고있는 new 생성자를 사용하면 주소값이 다 상이하다.

doGet의 종류

  1. 입력할 jsp를 보여주는 doGet : 글쓰기 → 바로 forward
  2. 내용을 출력하는 doGet : 목록, 글쓰기 → 서비스의 c"READ"ud 메소드를 호출 → request에 저장 후 forward

servlet 추가

  • 서블릿은 작업의 입구와 출구, 처리는 서비스
  • 서블릿은 주소, method, 입구, 출구
  • 처리할 수 있도록 데이터를 가공해 VO를 생성
  • 서블릿과 관련된 작업을 모두 수행
  • 서비스 클래스가 서블릿과 관련이 없게 만들어줘야 한다
    → 서블릿이 아닌 다른 프레임워크로 작업할 때도 서비스 클래스를 재사용할 수 있으니까.
  • 서비스쪽으로 서블릿 객체(요청,응답,세션)을 파라미터로 전달해서는 안 된다.
  • @WebServlet : url 지정
  • 입출력 : request(사용자 입력 정보 + 작업에 필요한 객체들)와 response(출력에 필요한 객체들)
  • doGet : 화면을 보여준다 → jsp로 forward
  • doPost : 처리한다 → 처리하면 작업이 종료된다. → 새로운 작업을 하기 위해 다른 서블릿으로 redirect한다.

VO (Value Object)

  • 도메인의 의미론을 반영
  • readOnly의 특징을 가진다.
  • String, Integer, Color 예) Color.RED : 값을 표현하기 위해 getter기능만이 존재.
  • 3가지 특성
  1. 불변성 Immutability : setter를 허용하지 않는다.
  2. 값 동등성 Value equality : 내부 값 동등성 검사
  3. 자기 유효성 검사 Self validation : 생성자에서 validate

POJO (plain Old Java Object)

  • 자바 문법만 사용한 클래스
  • 특정 프레임워크와 무관한 그냥 자바 클래스
  • 프로젝트에서 되도록 많은 클래스를 POJO로 만들어야 한다. 왜? 재사용을 위해.

패턴

웹 서버에서 4개의 클래스가 힘을 합쳐 하나의 작업을 처리한다
1. 사용자 요청을 접수하고 결과를 출력하는 클래스 : @Controller
2. 1/3/4에 속하지 않는 기타 작업을 처리하는 클래스 : @Service
3. 데이터베이스에서 읽고 쓰는 처리를 하는 클래스 : @Repository → 대신 ArrayList 사용 가능
4. 데이터베이스에서 읽고 쓰는 데이터를 저장하는 클래스 : VO

JSTL

https://velog.io/@ye050425/JSP-JSTL-%EC%A0%95%EB%A6%AC

0개의 댓글