Spring
스프링에 대한 글들을 모아놓은 카테고리입니다.
Contemplative Reptile

[Spring] JUnit5로 Mocking 및 슬라이스 테스트하기

JUnit5로 스프링 프로젝트 효과적으로 테스트하기에서 JUnit를 통해 전반적으로 테스트를 해보는 방법에 대해서 작성했는데, 사실 이 테스트 방법은 그리 좋은 방법은 아니다. 왜냐하면 Unit Test 원칙을 제대로 준수하지 않았고, 사실상 단위 테스트가 아니라 통합 테스트이기 때문이다. 이번에는 Slice Test와 Mocking 기.....
Contemplative Reptile

JUnit5로 스프링 프로젝트 효과적으로 테스트하기

오늘은 평소 운영하는 개발자 단톡방을 보고 있다가 JUnit으로 테스트하는 방법을 잘 모르는 사람이 생각보다 엄청 많은 것 같아서 JUnit5로 테스트하는 과정을 한번 포스팅해보려고 한다. 예제 프로젝트 전통적(?)인 테스트 방법 주변에 개발자들을 둘러보면 일상처럼 이런 방법으로 테스트를 하는데, 예를 들어 DAO를 작.....
Contemplative Reptile

스프링 부트 Jpa Querydsl 설정 방법 정리

그동안 간간히 Querydsl을 설정할 일이 있을 때마다 인터넷을 찾아보곤 했는데 매번 찾아보기 번거로워서 이번 기회에 Spring Boot+Jpa+Gradle 프로젝트에서 Querydsl 설정하는 방법을 정리해보려고 한다. 해당 게시글의 설정 방법은 Gradle 5.0 이상, IntelliJ 2020.x 이상을 기준으로 한다. 이 포스팅에서 사용되는 소스.....
Contemplative Reptile

스프링 커스텀 어노테이션으로 소스를 간결하게 하자

이번에 사내 소스를 살펴보던 중 매우 나쁜 냄새가 나는 소스가 있어서 개선 방법을 생각해 보았다. 문제의 소스 이런 식으로 사용자 아이디가 필요한 곳마다 같은 소스가 꼭 들어가 있는 것을 확인할 수 있었다. @RestController public class HomeController { @GetMapping("/") public void home(Auth.....
Contemplative Reptile

@RequestBody vs @ModelAttribute 언제 사용해야 할까?

지금까지 스프링으로 개발을 하면서 @Requestbody와 @Modelattribute의 차이점에 대해 잘 모르고 사용해왔다. @Requestbody로 써보고 안되면, @Modelattribute로 바꿔보는 식으로 했던 것을 반성해보면서 이번 기회에 한번 짚고 넘어가려고 한다. 더 자세한 내용은 참조를 확인하면 될 것 같다. @ModelAttribute HTTP 클라.....
Contemplative Reptile

스프링 부트에서 logback 설정하기

스프링 부트에 마이바티스를 설정하면서 로그를 이쁘게 찍으려고 logback 설정했던 방법에 대해서 정리하려고 한다. 예제 프로젝트 다운로드 git bash가 깔려 있다면 아래 명령어를 사용해 logback 설정해볼 예제 프로젝트를 받아주자. 만약 이미 프로젝트가 있다면 생략해도 된다. git clone -b mysql-mybatis --single-br.....