Spring project 시작 1일차
개인공부
어노테이션
기본정리
antMatchers vs mvcMatchers
query dsl을 설정하면서 두 가지 오류를 겪었다. 바로 설명 GO 📌 첫 번째 오류 > Unable to load class 'com.mysema.codegen.model.Type'. > This is an unexpected error. Please file a bug containing the idea.log file. -> 이건 버전이 맞지...
처음 팔로우와 팔로워를 생각 할 때 인스타를 생각했다. 내 기준 이상적인 팔로우와 팔로잉 시스템을 가지고 있다고 생각했기 때문이다. 그래서 단순히 팔로워 숫자만 있는 것이 아니라 여기에 팔로우를 한 사람을 추가해서 사람을 타고타고 더 다양한 사람을 볼 수 있지 않을까
간단한 등급 자동 갱신 Entity 여기서는 @Builder를 사용했고 최소로 set을 사용했다. > Entity를 만들 때는 외부에서 쉽게 변경할 수 없게 @Setter를 사용하지않는다. 그 이유는 @Setter를 사용하면 의도가 불명확하고 변경하면 안되는 중요한 값임에도 불구하고 변경 가능한 값으로 착각할 수 있다. (== 안정성 보장이 안된다.) ...
빈 스코프(Bean Scope)란? 빈 스코프는 말 그대로 빈이 존재할 수 있는 범위를 뜻한다. 스프링은 다음과 같은 다양한 스코프를 지원한다. 싱글톤(Singleton) : 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 프로토타입(Prototype) : 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만...
Spring MVC 흐름 spring MVC의 주요 구성 요소 Dispatcher Servlet Dispatcher Servlet이 거의 관제탑?이라고 생각하면 된다. Servlet class이며, 모든 client의 요청을 처리한다. Controller(Action)에게 client의 요청을 전달, Controller가 리턴한 결과값을 View에 전달...
Test Code 작성하는 이유! 1번째 이유 Test 코드를 작성하지 않고 결과를 검증하는 과정은 비용이 많이 든다. Test코드 사용 X (싱글 애플리케이션 (Monolithic Arichitecture)에서의 모습) > 검증 코드 작성 애플리케이션 실행 PostMan 혹은 브라우저 Request 요청 log 혹은 print로 결과 검증 원하지 않는 ...
Spring Application >스프링에 대해서 간략하게 집고만 넘어가자. Spring Application은 Java 기반의 애플리케이션을 구축하기 위한 포괄적인 프레임워크다. Spring Framework는 효율적이고 유연한 방식으로 애플리케이션을 개발하고 유지보수하기 위한 다양한 기능과 특징을 제공한다. Spring 주요기능 IoC (Inve...
JPA란 PA는 오늘날 스프링에서 많이 활용되고 있지만, 스프링이 제공하는 API가 아닌 자바가 제공하는 API다. 자바 ORM 기술에 대한 표준 명세로, 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스다. ORM(Object Relational Mapping) ORM 프레임워크는 자바 객체와 관계형 DB를 매핑한다. 즉, ...
더티 체킹 (Dirty Checking) ORM 구현체 개발 시 더티 체킹이라는 말을 자주 볼 수 있다. 더티 체킹이 어떤 것을 뜻하는 지 간단히 살펴보자. JPA로 개발하는 경우 구현한 한 가지 기능을 예로 들어보자 ex) 주문 취소 기능 orderId를 통해 주문을 취소하는 메소드다. 데이터베이스에 반영하기 위해선, update와 같은 쿼리가 ...
API에 권한 기능이 없으면, 아무나 회원 정보를 조회하고 수정하고 삭제할 수 있다. 따라서 이를 막기 위해 인증된 유저만 API를 사용할 수 있도록 해야하는데, 이때 사용할 수 있는 해결 책 중 하나가 Spring Security다. 스프링 프레임워크에서는 인증 및 권한 부여로 리소스 사용을 컨트롤 할 수 있는 Spring Security를 제공한다. ...
Spring 프레임워크는 엔터프라이즈 급 애플리케이션 개발을 위해 광범위하게 사용되는 자바 플랫폼입니다. 여기 Spring의 핵심 3요소, 즉 IoC(Inversion of Control), AOP(Aspect-Oriented Programming), 그리고 PSA(Portable Service Abstraction)에 대해 설명합니다.: 1. IoC (...
Jpa Spring Data Jpa에서는 기본적인 save, delete, findById 등 다양한 메서드를 지원해준다. 그리고 오늘 원래 편하게 사용하던 delete를 사용하던 중 삭제가 안된다..? 그래서 show-sql을 사용해서 쿼리 보내는 걸 보는 중 .. delete가 안나간다..?? 뭐야!!! 원래 썼던 코드는 이렇다. delete 메서...