gitaction으로 ci/cd하기

스프링 프로젝트 Github action으로 CI 자동화하기 에서 CI자동화를 완성했는데, 이후 aws ec2로 배포하면서, 배포까지 자동화하였다. aws 자동화에 매우 다양한 방법이

같은 트랜잭션 안에서 insert 주의하기

온라인 도서관 프로젝트에서, 현재로서는 책 커버이미지(BookCover)는 book당 1개밖에 갖지 못한다. 그런데, test에서 실패하는데 그 이유를 보니 findByBookId로 찾은 요소가 db에서

테스트 코드 작성하기

온라인 도서관 프로젝트에서 기능을 하나씩 확장할 때마다, 기능을 추가 하고 나서 천천히 사이트를 살펴볼 때, 갑자기 다른 곳 기능이 작동하지

파일 스토리지 제어는 커밋 이후에 하자

db에서 삭제 실패 해도 파일 시스템에서는 삭제 성공?! 이 코드의 문제는 뭘까? Optional을 findById에서 반환받아서 uploadFile 객체를 반환받았을 경우에만 fileStore에서

jdbcTemplate + Spring Data로 페이지네이션 구현하기

페이지네이션은 구현하기 어렵다. 간단해보이는 기능인 페이지네이션은, 사실은 구현하기 어려운 기능이다. 등 여러가지로 복잡한 기능이다. 하지만, Spring Data에서는 Pageable, Page와 같은

Valitator vs Exception 처리

Validation 적용 회고에서 다양하게 Validation을 적용했었는데, 주요한 포인트는, 간단한 것은 BeanValidation으로, 복잡한 것은 Validator 구현으로 하자였다. 그런데, 작업하다보니 복잡한 경우,

개발자  김철준

백엔드 개발자 김철준의 블로그입니다.

주요 프로젝트