목록zerebase/Spring (5)
Hyunebee
Lombok : @Setter , @Getter -Java Bean 규약에 있는 setter, getter를 자동으로 생성해줌 @ToString -Object에 기본 구현된 ToString 대신 객체의 데이터를 보여주는 ToString을 자동 생성 @NoArgsConstructor -No Argument Constructor, 파라미터가 없는 생성자를 만든다. -만약 필드가 final로 설정되어 있는 경우 컴파일러 에러가 발생한다. 필드가 final로 설정되어 있는 경우@NoArgsConstructor(force = true)옵션을 사용하면 final 필드를 0,false,null 등으로 강제 초기화를 하여 생성자를 만들 수 있다. @RequiredArgsConstructor -final 필드 또는 @N..

필터 스프링 외부에 존재 서블릿에서 제공하는 공통처리 기능 스프링 내로 요청이 들어오기 전과 스프링의 요청이 나갈 때 처리 기능을 함 조금더 low level의 처리가 가능하다. 인터셉터 스프링에서 제공하는 공통처리 기능 실제 매핑된 Handler 확인 가능 조금 더 상세한 조건식과 세부적인 스펙을 통해 구체적인 시점에 구체적인 동작이 가능하다. AOP와 비교한다면 AOP는 인터셉터보다 더 구체적인 조건과 동작을 가진다. 실습 아래는 @Component를 통해 자동으로 스프링 컨테이너 부착 @Component @Slf4j public class LogFilter implements Filter{ @Override public void doFilter( ServletRequest request, Servl..

Controller와 restController의 차이 Controller : 응답값이 기본적으로 HTML을 주도록 되어 있음 RestController : 응답값으로 Rest API 요청에 대한 응답(주로 JSON)을 주도록 되어 있음 축약형 매핑 어노테이션 -> 스프링4.3 부터 @GetMapping : 데이터를 가져옴 @PostMapping : 데이터를 전송함 @PutMapping : 전체 수정 @PatchMapping : 일부 수정 @DeleteMapping : 삭제 스프링 HTTP 요청 파라미터 전송 파라미터를 넘기는 법(Get, Delete) 1. PathVariable : id를 path에 넣는것을 선호 @PathVariable(”id”) String identity; 하지만 이름이 같으면 ..

Validation - 유효성 검증 주로 사용자 or 타 서버의 요청에 대해 잘못된 내용이 있는지 확인하는 행위 Validation 1. 데이터 검증 필수 데이터의 존재 유무, 값의 범위, 특정 형식 데이터 등 2. 비지니스 검증 서비스에 정책에 따라 데이터를 확인하여 검증 Spring Validation 스프링은 웹 레이어에 종속적이 지 않고 2가지 방법으로 진행 -> 둘다 데이터 검증에 가까움 1.Java Bean Validation JavaBean 기반으로 간편하게 개별 데이터 검증 어노테이션으로 검증 방법을 명시해줌 2.Spring validator 인터페이스 구현을 통한 validation Data Binding 사용자나 외부 서버의 요청 데이터를 특정 도메인 객체에 저장해서 우리 프로그램에 R..

OOP를 왜 사용할까? 소프트웨어의 복잡성을 제어하고 관리하기 가장 쉬운 대중적인 방법이다. OOP란? 데이터(상태)와 로직(행위)이 응집되어 상호 교류하여 동작하도록 만드는 기법(ex) 상속, 캡슐화, 다형성) 1. 분류 > Class Class는 프로그램의 코드를 체계적으로 분류하고 같은 역할을 하는 코드를 응집성 있게 모아준다. 2. 교체 > 유지보수 경우에 따라 특정 모듈을 통째로 변경해야 할 수 도 있음 OOP를 잘하려면? SOLID 원칙을 준수! 1. SRP - 단일 책임 원칙 : 한 클래스는 단일의 책임을 가져야 한다. 단일? 책임? 둘다 모호함 2. OCP - 개방 폐쇄의 원칙 : 확장에는 열려있고, 변경에는 닫혀있다. 수정하지 말고 신규 클래스를 추가하자! 3. LSP - 리스코프 치환 ..