본문 바로가기

spring2

[Design Pattern] 템플릿/콜백 패턴(Template/Callback Pattern) 0. 분리가 어려운 반복코드 개발을 하다보면, "반복되는 부분이 눈에 보이는데, 쉽사리 분리하지 못하는 경우" 가 종종 발생하곤 합니다. 대표적으로, Java 의 try / catch / finally 가 있죠. 아래 코드는 DataSource 를 활용해 데이터를 처리하는 DAO 코드를 작성한 예시 입니다. @Repository public class UserDao { public DataSource dataSource; public UserDao(DataSource dataSource) { this.dataSource = dataSource; } public void insert(User user) { Connection c = null; PreparedStatement ps = null; try { .. 2023. 12. 8.
[ATDD] RestAssured를 이용해 multipart/form-data 요청 테스트 시, 한글 깨지는 오류 해결하기 사이드 프로젝트를 하다가 파일 업로드 기능을 개발했다. 파일 업로드의 경우, Request 의 Content-Type 을 multipart/form-data 로 보내도록 했는데, application/json 일 때, 문제가 없었던 한글깨짐 현상이 발생해서 테스트가 실패로 나오는 문제를 겪었다. 해당 문제를 해결한 과정을 적어보려고 한다. 1. 발생한 문제 보통 인수테스트를 작성할 때, 요청의 Content-Type(a.k.a MediaType, 구. Mime Type) 을 application/json 으로 보냈는데, 파일 업로드 기능을 테스트 하기 위해 요청의 Content-Type을 multipart/form-data 로 변경했다. 당연히, 그에 따라 Controller 의 파라미터에도 변화가 생겼.. 2023. 4. 22.