study 29

M2-W2-D4

#메세지 컨버터 XML 이나 JSON을 이용한 AJAX 기능이나 웹서비스 개발에 이용 - HTTP 요청 메세지 본문( Request Body ), HTTP 응답 메세지 본문( Response Body )을 통째로 메세지로 다루는 방식 - 파라미터의 @RequestBody, 메소드에 @ResponseBody를 이용 - 메세지 컨버터는 AnnotationMethodHandlerAdapter를 통해 하나 이상의 컨버터가 등록, 선택 동작하게 된다. - 응답(Response)의 경우 해당 핸들러 메소드에 @ResponseBody 와 함께 반환되는 객체의 종류에 따라 메세지 컨버터가 선택되고 응답바디 내용이 채워져 브라우저로 전달된다.

study/개인공부 2021.06.10

M2-W2-D3

AOP: (A)spect (O)riented (P)rogramming : 관점 지향 프로그래밍 * 가장 기초가 되는 개념은 관심의 분리(Separation of Concern) 1. 핵심관심 : 시스템의 핵심 가치와 목적이 그대로 드러난 관심영역 2. 횡단관심: 핵심관심 전반에 걸쳐 반복적으로 나오게 되는 로깅, 트랜잭션, 보안, 인증, 리소스 풀링, 에러체크 등의 관심영역 3. 관심의 분리: 여러 핵심관심에 걸쳐 등장하는 횡단관심을 분리하여 독립적인 모듈로 만들고 핵심관심이 실행되는 동안 횡단관심을 호출하는 코드를 직접 명시하지 않고 선언적으로 처리 4. 핵심관심 모듈의 중간중간에서 필요한 횡단관심 모듈을 직접 호출하지 않고 위빙(Weaving)이라 불리는 작업을 이용하여 횡단관심 코드가 삽입되도록 만..

study/개인공부 2021.06.09

M2-W2-D2

Loging 관리자 페이지 1. logging - 비 기능적 요구사항 ( Non Functional Requirement ) - 하지만, 프로그램 개발 중 디버깅 및 개발완료 후 문제점 추적 및 분석을 위해 필수적으로 갖추어야 할 요구 조건 - 로그(Log) 는 프로그램 개발이나 운영 시 발생하는 문제점을 추적 하거나 운영 상태를 모니터링 하는 정보 - 로깅(logging)이란 로그(log)를 생성하도록 시스템을 작성하는 활동 - 얻을 수 있는 것 1. 재현하기 힘든 ( 테스트 환경이 아닌 개발 완료된 환경에서 발생하는 ) 버그에 대한 유용한 정보를 제공 2. 성능에 관한 통계와 정보를 제공할 수 있다. 2. JCL - logging standard - open source library - log4j를..

study/개인공부 2021.06.08

M2-W1-D5

Spring 1. ViewResolver - HandlerMapping이 컨트롤러를 찾아주는 것 처럼, View 이름을 가지고 View 오브젝트를 찾아준다. 2. 예외처리 - 예외처리부분에 회사의 처리방식을 물어보도록 하자 3. 예외처리 해결방법 - throws 를 던지는 행위는 하지만 runtimeException를 포장을 하면된다. 사과 -> 로깅 -> 종료 * 예외 복구 - 예외상황을 파악하고 문제를 해결해서 정상 상태로 돌려 놓는 것. - 예외를 어떤 식으로 복구 가능성이 있을 때 예외 처리를 강제하는 체크 예외를 사용할 수 있다. - 예외는 복구가 가능한가? * 예외 처리 회피 - throws 문을 선언하여 예외가 발생하면 외부로 던지게 한..

study/개인공부 2021.06.04

M2-W1-D3

spring 1. 스프링? - 자바엔터프라이즈 개발을 편리하게 해주는 오픈소스 경량급 어플리케이션 프레임워크 * framework - 눈에 실질적으로 보이는것은 프레임워크 라이브러리 - 전체적인 부분을 만들어놓고 필요한 부분만 개발자들이 만들어서 사용하는 방식으로 사용 - 사용분야에 따라서 프레임워크의 종류가 달라짐(web, db, application tool) 2. 스프링 컨테이너 - EJB의 비즈니스 서비스 컨테이너의 기능은 유지하되 복잡성을 제거한 컨테이너의 필요성 - 객체들의 라이프사이클을 관리해주는 컨테이너의 기본적인 기능 - 컨테이너에서 제공하는 API를 상속받거나 구현하여 코드를 작성하는 부분들을 제거 - 컨테이너를 이루는 파일자체가 몇 메가 밖에 안 되는 작은 사이즈이며 구동에 필요한 시..

study/개인공부 2021.06.02

M2-W1-D1

com.douzone.web.fillter l----EncodingFilter com.douzone.web.listener #filter - 필터는 서블릿 실행 전, 후에 어떤 작업을 하고자 할때 사용 - 서블릿이 실행되기 전에 필요한 자원을 미리 준비하거나, 서블릿이 실행될 때마다 로그를 남긴다거나 하는 작업을 필터를 통해 처리 - 작업들을 서블릿에 담는다면 필요한 서블릿마다 해당 코드를 삽입해야하고 필요가 없어지면 그 코드를 삽입한 서블릿을 모두 찾아서 삭제해야 하므로 관리하기가 매우 번거로워진다 #servlet LifeCircle

study/개인공부 2021.05.31