[Spring boot] @AutoConfigureMockMvc, @WebMvcTest
·
Spring/spring boot
✅ MockMvc MVC에 관련된 Mock 가짜 객체 ➡️ 스프링 MVC 애플리케이션의 테스트를 작성할 때 사용되는 프레임워크 웹 어플리케이션을 애플리케이션 서버에 배포하지 않고, 테스트용 MVC 환경을 만들어서 요청 및 전송, 응답 기능을 제공해주는 객체 @SpringBootTest class SpringBootTest { @Autowired MockMvc mockMvc; // 주입 X } 🚨 @SpringBootTest만 선언하고, MockMvc를 @Autowired로 주입받으려고 하면, 주입이 되지 않아 오류가 발생 ➡️ @SpringBootTest는 MockMvc를 빈으로 등록시키지 않기 때문 ➡️ @AutoConfigureMockMvc 나 @WebMvcTest 사용 📌 @AutoConfigur..
[Spring boot][Apple Login] 애플로그인 구현
·
Spring/소셜로그인
매우 악명이 높은 애플로그인을 ..... 구현해보았습니다...... 제가 이해한 애플로그인의 방법은 1. 프론트로부터 authorization_code를 넘겨받고 2. 해당 코드로 유저정보 및 access token을 발급받고 3. DB에 없는 회원이라면 회원가입을 시킨 후 로그인하고, 기존회원이라면 로그인을 시킨 후 4. 토큰을 반환하는 식으로... 구현하였습니다 spring: security: oauth2: client: registration: apple: clientId: [Bundle ID] clientSecret: /home/ec2-user/app/[keyname.p8] redirect-uri: https://[domain.com]/login/oauth2/code/apple authorizat..
Lombok (롬복)이란?
·
Spring/spring boot
📌 Lombok이란 @Getter, @Setter 등 여러 어노테이션을 제공하고 반복되는 코드를 간편하게 줄여주는 라이브러리이다. 대표적인 예제 : Getter, Setter, ToString, Constructor(생성자) 📌 Lombok의 장점 복잡하고 반복되는 코드를 어노테이션 기반의 코드 자동 생성으로 생산성이 향상된다. 반복되는 코드가 줄어들어 가독성 및 유지보수성을 향상시킬 수 있습니다. 📌 Lombok의 단점 직관성을 중요시하는 개발자에겐 코드가 직접 눈에 보이지 않아 별로일 수 있다. 📌 Lombok 사용과 일반 java 코드의 차이 ✅ getter/setter 직접 작성 public class MemberDto { private String id; private String passwor..
[Spring boot] H2 Console 접속 에러
·
Spring/spring boot
📌 문제 상황 h2.sh를 실행하고 해당 링크에 들어가면 h2 실행이 안되고 404 에러가 발생한다. 📌 원인 yml 설정에 h2-console 사용 여부를 설정하지 않았기 때문이다 📌 해결책 h2: console: enabled: true