[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..
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
[Spring boot] @RestController와 @Controller
·
Spring/spring boot
📌 @Controller ⚡ View 반환 전통적인 Spring MVC의 컨트롤러 주로 View를 반환하기 위해 사용 Client는 URI 형식으로 웹 서비스에 요청을 보냄 DispatcherServlet이 요청을 처리할 대상을 찾음 HandlerAdapter을 통해 Controller로 위임 Controller는 요청을 처리한 후에 ViewName을 반환 DispatcherServlet은 ViewResolver를 통해 ViewName에 해당하는 View를 찾아 사용자에게 반환함 ➡ Controller가 반환한 뷰의 이름으로부터 View를 렌더링하기 위해서는 ViewResolver가 사용되며, ViewResolver 설정에 맞게 View를 찾아 렌더링 된다. ⚡ Data 반환 @ResponseBody 어..