PATCH 메소드는 2010년도에 뒤늦게 HTTP 표준 스펙으로 추가되었습니다. 그리고 이로 인해 스프링 코드도 영향을 받게 되었는데, 왜 영향을 받게 되었고 어떠한 영향을 받게 되었는지 살펴보도록 하겠습니다. 그렇게 중요하지도 않은 내용이고 기록용으로 작성하는 것이라서 편하게 읽어주시면 될 것 같습니다. 1. 뒤늦게 등장한 HTTP PATCH 메소드 [ 뒤늦게 등장한 HTTP PATCH 메소드 ] PUT과 PATCH의 용도 개발을 하다보면 PATCH 메소드에 대해 잘 모르거나, 익숙해하지 않는 분들이 많이 있다. 또한 PUT과 PATCH의 용도를 헷갈리는 개발자들도 많은데, PUT과 PATCH의 용도를 쉽게 정리하면 다음과 같다. PUT: 리소스의 전체 수정 PATCH: 리소스의 부분 수정 PATCH에..
최근에 송파구에서 일을 더잘하는 11가지 방법과 김창준님이 집필하신 함께 자라기라는 책을 접하게 되었습니다. 이번에는 두 가지를 접하면서 느꼈던 점들을 정리해보고자 합니다. 1. 우아한 형제들의 "잡담이 경쟁력이다"와 함께 자라기의 "심리작 안전감" [ 송파구에서 일을 더 잘하는 11가지 방법 ] 우아한 형제들의 김봉진 의장은 2015년에 우아한형제들의 일 문화의 상징이자 꽤나 구체적인 가이드를 포스터로 정리했다. 그것은 바로 "송파구에서 일을 더 잘하는 11가지 방법"인데, 포스터를 보면 다음과 같다. 그 중에서도 가장 인상깊었던 부분, 그리고 이번에 얘기해보고자 하는 부분은 3번의 "잡담을 많이 나누는 것이 경쟁력이다"라는 부분이다. 처음 이것을 접하고는 신선한 충격을 받았는데, 잡담을 많이 나눌 것..
이번에는 @RequestBody에 ArgumentResolver(아규먼트 리졸버)가 동작하지 않는 이유를 알아보고 @RequestBody의 동작을 커스터마이징하여 부가 기능을 적용하는 방법에 대해 알아보도록 하겠습니다. 1. @RequestBody에 ArgumentResolver(아규먼트 리졸버)가 동작하지 않는 이유 [ ArgumentResolver(아규먼트 리졸버)란? ] 스프링의 디스패처 서블릿은 컨트롤러로 요청을 전달한다. 그때 컨트롤러에서 필요로 하는 객체를 만들고 값을 바인딩하여 전달하기 위해 사용되는 것이 ArgumentResolver이다. 스프링이 제공하는 다음과 같은 어노테이션들은 모두 ArgumentResolver로 동작한다. @RequestParam: 쿼리 파라미터 값 바인딩 @Mod..
아래의 내용은 김창준님의 함께자라기를 읽고 정리한 내용입니다. 1. 자라기 [ 당신은 몇 년차? ] 연차는 중요한 요소가 아니다 소프트웨어 기술자의 등급은 학력과 연차로 고려되는 경우가 많지만 사실상 경험이 가장 중요한 요소이다. 그 사람의 실력에 대해서는 연차로부터 다음과 같은 사항들만 결정할 수 있다. 연차로는 이 사람이 초급인지 아닌지 정도만 기대할 수 있다. 초급이 아닌 사람들에 대해서는 연차가 오히려 혼동을 불러일으키는 잘못된 정보로 작용할 수 있다. 연차로 채용 여부나 임금 수준을 결정하는 것은 편의적이고 관료주의적이며 조직에 손해를 줄 수 있다. 미국 연방 정부의 연구 결과에 따르면 채용 후 성과-연차 또는 성과-학력의 상관성은 매우 낮았다. 반면에 샘플 작업, 지능 테스트, 구조화된 인터뷰..
API를 제공하다 보면 1개의 쿼리 파라미터로 여러 값을 줘야하는 경우가 있습니다. Spring 프레임워크에서는(엄밀히는 톰캣) 여러 개의 값을 1개의 쿼리 파라미터로 줘야할 때 콤마를 사용하면 정상적으로 처리가 가능한데, 왜 가능한지 살펴보도록 하겠습니다. 궁금해서 찾아본 굉장히 불필요한 내용이니 그냥 넘어가셔도 됩니다:) 1. 여러 값을 1개의 쿼리 파라미터로 처리해야하는 경우 [ 여러 개의 값을 1개의 쿼리 파라미터로 처리해야하는 경우 ] API를 개발하다보면 여러 개의 값을 1개의 쿼리 파라미터로 넘겨야하는 상황이 발생할 수 있다. 예를 들어 특정 id값들을 갖는 게시물들을 모두 조회해야 하는 상황이 이러한 경우가 될 수 있다. 이러한 상황을 해결하기 위한 다양한 방법들이 존재하는데, 일반적으로 ..