한 클래스는 단일의 책임만 가져야 한다.클래스를 변경하는 이유는 단 하나여야 함.이를 지키지 않으면, 한 책임의 변경에 의해 다른 책임과 관련된 코드에 영향을 미칠 수 있음유지보수가 매우 비효율적확장에는 열려있고, 변경에는 닫혀있다.기존의 코드를 변경하지 않고 기능을
스프링이 다른 프레임워크와 차별화되어 제공하는 의존 관계 주입기능 객체를 직접 생성하는 것이 아니라 외부에서 생성한 후 주입 시켜주는 방식 DI를 통해서 모듈 간의 결합도가 낮아지고, 유연성이 높아진다.토비의 스프링, 스프링 3/4 시절까지 많이 사용설정이 외부로 명확
우리 시스템은 다양한 자원이 필요. 외부 sftp, http, 파일 등에서 자원들을 끌어올 수 있음자바의 표쥰 클래스들을 다양한 리소스(URL, 파일 등)에 접근 할 때 충분한 기능을 제공하지 않음, 스프링은 필요한 기능을 만들어서 제공file : http:
AOP (Aspect Oriented Programming) 공통적인 관심사(로깅, 트랜잭션, 인증)를 여러 메서드의 호출 전/후에 원할 때마다 손쉽게 추가 OOP로 처리하기에는 다소 까다로운 부분을 AOP라는 처리 방식을 도입하여 손쉽게 공통 기능을 추가/수정/삭제할
주로 사용자 또는 타 서버의 요청(http request) 내용에서 잘못된 내용이 있는 지 확인하는 행위필수 데이터의 존재 유무문자열의 길이나 숫자형 데이터의 경우 값의 범위email, 신용카드 번호 등 특정 형식에 맞춘 데이터서비스에 정책에 따라 데이터를 확인하여 검
💡 Expression Laguage(표현언어)는 짧고 간단한 문법을 통해 필요한 데이터나 설정 값을 얻어올 수 있게 하는 특별한 형태의 표현식에 가까운 간편한 언어(그래프 접근 가능)SpelParser 는 "" 안에 들어있는 문자열을 평가(evaluation) 해서
Spring MVC 프로젝트 생성 스프링 기본 HTTP 요청 매핑 Controller, RestController 차이 Controller : 응답값이 기본적으로 HTML을 주도록 되어있음 RestController : 응답값으로 Rest API 요청에 대한 응답(
스프링 외부의 서블릿에서 제공하는 공통처리 기능스프링 내로 요청이 들어오기 전과 스프링의 요청이 나갈 때 처리 가능조금 더 low level 처리가 가능스프링에서 제공하는 공통처리 기능실제매핑된 Handler 정보 확인 가능(어떤 것이 실제 내 요청을 처리하는 지도 확
예외란? 프로그램이 예상치 못한 상황을 만났을 때 오류를 발생시키는 것 (throw new Exception()) 일반적인 자바 프로그램이 예외를 처리하는 방법 스프링 MVC에서 예외를 처리하는 방법 (REST API) @ExceptionHandler 컨트롤러 기
단순 텍스트가 아닌 하이퍼 텍스트(다른 내용에 대한 링크를 갖는 문자열)을 전송하기 위한 프로토콜(약속된 정의)첫 째줄 : 요청라인(HTTP 메서드(GET, PUT, POST등)두 번째줄부터 줄바꿈 나오기 전까지 : Header(User-Agent, Accpet 등)헤
All or Nothing, 모든 작업이 실행되거나 혹은 모두 실행되지 않아야 한다.ex) A 계좌에서 B 계좌로 잔액을 송금할 때'A 계좌 잔액 줄이기' 작업과 'B 계좌 잔액 늘리기' 작업은 함께 성공하거나 함꼐 실패해야 한다.모든 트랜잭션이 종료된 후에는 DB의