Java 3

[Java / Spring] Spring Boot 테스트 작성하기

테스트 코드소프트웨어를 테스트하는 것은 품질 관리에 있어 중요하다. 프로젝트 수행 시, E2E 테스트 케이스를 문서로 작성하여 직접 수행해보고 통과 여부를 작성한다. 테스트를 수행하기에 앞서(혹은 수행하는 대신), 개발한 소프트웨어를 코드 레벨에서 테스트할 수 있다면 보다 효과적으로 개발할 수 있다. 장애가 발생했을 때 원인을 빠르게 파악할 수 있고, 리팩토링 시 코드가 잘 작동함을 보장할 수도 있다. 이번 포스팅에서는 간단한 Spring Boot 어플리케이션을 작성하고, 테스트 코드를 작성해보면서 방법을 익힌다. 프로젝트 셋업다음과 같이 셋팅한다. start.spring.io의 initalizer를 활용하였다. build.gradleplugins { id 'java' id 'org.springframe..

웹 개발/Backend 2025.07.29

[Java / Spring] 페이지네이션의 개념과 Spring Data JPA를 이용한 구현

페이지네이션(Pagination)클라이언트에서 데이터 요청 시, 특정 구간의 데이터만을 제공받을 수 있도록 하는 기법이다. 클라이언트에서는 요청 구간에 대한 정보를 넘겨주고, 서버에서는 해당 구간 정보에 맞춰 데이터를 잘라 응답으로 보내주게 된다. 인스타그램, 페이스북, 네이버 카페 등 “게시판” 기능이 있는 서비스라면 거의 모두 사용하는 기법이다. (최소한의) 페이지네이션 개발에 필요한 정보서버 단에서 데이터를 잘라내는 방법은 DB 쿼리 조회 시 시작점과 컨텐츠의 갯수를 이용해 OFFSET~LIMIT 구문을 활용하는 것이다.SELECT * FROM [테이블]OFFSET [시작점] LIMIT [보여줄 컨텐츠의 갯수] 한편, 화면에서 페이지를 표시하기 위해 총 페이지의 갯수 혹은 전체 컨텐츠의 갯수가 필..

웹 개발/Backend 2025.06.10

6. 다양한 기술을 접할 수 있었던, 첫 프로젝트 회고

들어가며7개월 간 회사의 MLOps 솔루션을 고도화하고, 고객사에 파견을 나가 커스터마이징 구축 업무를 수행했다. 힘들었지만, 많이 배우고 재밌는 프로젝트였다. 운이 좋게도 관심 있었던 기술들을 다양하게 접할 수 있었다. 프로젝트 기간이 짧기 때문에 숙련되었다고는 할 수 없지만, 앞으로 기술을 더 넓고 깊게 쌓아갈 열쇠를 얻었다는 생각이 든다.  경험이 중요하다. 어쩌면 학습보다도. 고객사에 파견을 나가 솔루션 커스터마이징 개발을 수행하고, 통합 테스트 기간에 고객사로부터 접수되는 결함을 조치하였다. 주어진 시간은 짧은데 할 일은 많아서 정신 없이 개발했던 것 같다. 프로젝트 현장에 나오니 '이건 돈 받고 구축해주는 서비스'라는 나름의 책임감을 가지게 되었고 내가 할 수 있는 최선을 다했다. 기능을 개발..

회고 2025.04.06