[Spring Boot] JUnit과 Mockito
우리 모두 알다시피, 단위 테스트는 애플리케이션 개발에서 유지해야 할 주요한 중요한 관행 중 하나입니다. 이 글에서는 Java 애플리케이션의 단위 테스트 프레임워크인 Junit과 Mockito의 Rest apis에 대해 살펴보겠습니다. 단위 테스트란 무엇인가요? 단위 테스트(Unit Testing)는 애자일 방법론의 연속 프로세스 중 하나로 알려져 있습니
우리 모두 알다시피, 단위 테스트는 애플리케이션 개발에서 유지해야 할 주요한 중요한 관행 중 하나입니다. 이 글에서는 Java 애플리케이션의 단위 테스트 프레임워크인 Junit과 Mockito의 Rest apis에 대해 살펴보겠습니다. 단위 테스트란 무엇인가요? 단위 테스트(Unit Testing)는 애자일 방법론의 연속 프로세스 중 하나로 알려져 있습니
multipart 기본 경로 Spring Boot 설정에서 spring.servlet.multipart.location를 특정 경로로 설정하지 않을 경우 기본적으로 tmp 폴더로 지정됩니다. 각 운영체제 tmp 경로 Windows: C:\User\사용자\AppData\Local\Temp Linux: \tmp 각 운영체제 basedir 경로 Windo
Spring Boot에서 MultipartFile와 Bootstrap의 Modal을 사용하여 이미지 파일을 업로드하는 방법에 대해 알아보겠습니다. Spring Boot 2.6.11 버전과 Bootstrap 5를 사용하였습니다. MultipartFile MultipartFile이란 스프링에서 업로드한 파일을 표현할 때 사용되는 인터페이스입니다. 파일 내용은
WebSocket 이란 웹소켓(WebSocket)은 하나의 TCP 접속에 전이중 통신 채널을 제공하는 컴퓨터 통신 프로토콜이다. 웹소켓 프로토콜은 2011년 IETF에 의해 RFC 6455로 표준화되었으며 웹 IDL의 웹소켓 API는 W3C에 의해 표준화되고 있다. 위키백과 HTTP 프로토콜과 호환되며, 실시간 양방향 통신을 제공하기 위한 프로토콜이며
동일 트랜잭션 내부 연관 엔티티가 수정되었을 경우 CascadeType과 상관없이 자동으로 수정됩니다. 같은 트랜젝션이라 하더라도 해당 엔티티가 CasecadeType.PERSIST 로 설정 되어 있지 않으면 연관 엔티티를 추가하더라도 반영되지 않습니다. (CascadeType.MERGE로 설정 되어도 추가는 되지 않음) CascadeType 별 동
QueryDslPredicateExecutor를 이용하는 findAll, findOne 등은 where, Sort, Limit 등의 조건만 넣을 수 있습니다. 하지만 Join이나 Group by 등의 기능을 사용하려면 인터페이스 선언만으로는 기능을 구현하기 힘듭니다. 이를 해결하기 위해서 Spring Data JPA에서 제공하는 QuerydslReposit
Query DSL JPA, JDO, SQL 같은 백엔드를 위해 type-safe SQL을 만드는 프레임워크 Domain Specific Language 특정한 도메인에 초점을 맞춘 제한적인 표현력을 가진 컴퓨터 프로그래밍 언어 특징 type-safe 조회에 특화된 프로그래밍 언어 단순, 간결 다양한 저장소 조회 기능 통합 (데이터 조회 기능 추상화
NamedQuery 란 Entity에 @NamedQuery 어노테이션을 통해 쿼리를 지정해 줍니다. 쉽게 말하면 미리 이름을 부여해서 재활용할 수 있는 JPQL입니다. 사용 방법 도메인 클래스에 @NamedQuery 또는 @NamedNativeQuery를 정의합니다. 2개 이상의 Query를 정의하려면 @NamedQueries 또는 @NamedNati
Spring Data JPA 쿼리 메서드는 가장 강력한 메서드이며, SQL 쿼리를 작성하지 않고도 데이터베이스에서 레코드를 선택하는 쿼리 메서드를 만들 수 있습니다. 백그라운드에서 Spring Data JPA는 쿼리 메서드를 기반으로 SQL 쿼리를 생성하고 쿼리를 실행합니다. Entity 필드를 사용하여 Repository에 대한 쿼리 메서드를 생성할 수
RDB(Relational DataBase) 에는 Collection 형태의 데이터를 칼럼에 저장할 수 있는 방법이 없습니다. 그래서 별도의 테이블을 생성하고 Collection을 관리해야 합니다. JPA의 @ElementCollection 사용하여 별도의 테이블을 생성하고 Collection 을 관리할 수 있습니다. ElementCollection 특징은