Spring18 [Spring][Error] Spring Security 적용할 때 circular reference, dependency가 cycle 형성하는 것 해결하기 SecurityConfig @RequiredArgsConstructor @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { ... private final UserService userService; @Bean public BCryptPasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } @Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.userDetailsService(userService).passwordEn.. 2022. 3. 14. AWS RDS(MariaDB)와 IntelliJ Database 연동하기 - [스프링 부트와 AWS로 혼자 구현하는 웹 서비스] AWS RDS(MariaDB)와 IntelliJ Database Navigator 연동 과정에서 오류 Versions IntelliJ IDEA 2021.3.1 (Ultimate Edition) Spring Boot 2.6.4 JDK 11 MariaDB(AWS RDS) 10.5.13 [스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 책을 따라 실습하던 중에 Chapter 07의 AWS RDS를 생성하고 인텔리제이의 데이터베이스와 연동하는 과정에서 DB Navigator를 설치하고 아래와 같이 필드를 채운 후 Test Connection을 시도했다. 하지만 위와 같이 Connection error가 발생했다. 구글링을 계속 해보다가 마땅한 답이 없어서 인텔리제이 Ultimate 버전을 사용하고 있기 때문에.. 2022. 3. 5. SpringBoot 간단한 CRUD REST API 구현 및 JUnit5로 테스트하기 REST API란? REST API는 REST(representational state transfer)를 기반으로 하여 HTTP 요청을 사용하여 데이터에 액세스하고 사용하는 API의 아키텍처 스타일입니다. CRUD란? API를 구축할 때 모델이 제공하는 4가지 기본 유형의 기능, Create(생성), Read(읽기), Update(수정), Delete(삭제)를 CRUD라고 합니다. CRUD 구현 (Entity, Repository, Service, Controller) JPA와 H2 데이터베이스를 사용하여 간단하게 구현했습니다. User.java (Entity) package com.example.practice.impl; import lombok.Builder; import lombok.Getter;.. 2022. 2. 26. JPA Auditing으로 Entity의 createdDate, modifiedDate 관리 JPA Auditing? 데이터를 관리하는데 있어서 생성시점, 수정시점 등 언제 데이터가 변경되었는지 기록해 두는 것은 매우 중요합니다. 그리고 이러한 것들은 한 엔티티에 국한된 것이 아니라 모든 엔티티에 적용됩니다. 중복을 편하게 해결하기 위해 Spring Data는 엔티티를 생성하거나 변경한 시점을 추적하기 위한 것들을 제공합니다. 이 기능을 이용하면 데이터를 생성하거나 수정할 때 따로 로직을 구현하지 않아도 자동적으로 시간 데이터를 관리해줍니다. 예제로 확인하기 위해 먼저 간단하게 Entity, Controller, Repository, Service를 구현하였습니다. User.java package com.example.practice.impl; import lombok.Builder; impor.. 2022. 2. 26. Spring Data JPA & H2 데이터베이스 연결하기(인메모리, TCP) 로컬에서 개발하거나 단위 테스트, 토이 프로젝트 등을 진행할 때 H2 데이터베이스를 많이 사용합니다. H2 데이터베이스는 설치와 관리가 편하고, 여러 데이터베이스와 호환성도 지원하기 때문에 가볍게 사용하기 좋습니다. 설명을 위해 먼저 간단하게 Entity, Controller, Repository, Service를 구현하였습니다. User.java package com.example.h2connect.web; import lombok.Builder; import lombok.Getter; import lombok.NoArgsConstructor; import javax.persistence.*; @Getter @NoArgsConstructor @Entity public class User { @Id @G.. 2022. 2. 24. Spring Initializr로 Spring Boot 프로젝트 생성하고 IntelliJ에서 GitHub 연동하기 Spring Initializr로 Spring Boot 프로젝트 생성하기 https://start.spring.io/ Spring Boot 프로젝트를 생성할 때 Spring Initializr를 사용하면 쉽게 프로젝트를 생성할 수 있습니다. 위의 링크로 들어가시면 다음과 같은 화면이 나옵니다. Spring Initializr에서 자신이 만들고자 하는 프로젝트에 따라 설정을 해줍니다. 저는 다음과 같이 설정해 주었습니다. Project : Gradle Project Language : Java Spring Boot : 2.6.3 Group : com.example Artifact : test Packaging : Jar Java : 11 Spring Boot 중 SNAPSHOT이 붙은 것은 현재 개발 중인.. 2022. 2. 22. 이전 1 2 3 다음