본문 바로가기
반응형

전체 글319

[Reactor] zip vs zipWith vs zipWhen 💡 zip() 여러개의 Publisher를 인자로 넘기고, 이 모든 Publisher들의 결과를 한 묶음으로 조회할 수 있다. Publisher를 최대 8개까지 넘길 수 있다. 예외나 빈값이 발견되면 즉시 에러/완료 처리된다. Flux userFluxFromStringFlux( Flux usernameFlux, Flux firstNameFlux, Flux lastNameFlux ) { return Flux.zip(usernameFlux, firstNameFlux, lastNameFlux) .map(it -> new User(it.getT1(),it.getT2(),it.getT3())); // 아래와 같이 각 결과에 이름을 붙일 수 있다. // .map((username, firstName, lastNam.. 2024. 4. 7.
무기력을 흘려보내는 이야기 목차 1. 무기력이 찾아온 이야기 2. 무기력을 받아들이는 이야기 3. 무기력을 흘려보내는 이야기 4. 마무리하는 이야기 1. 무기력이 찾아온 이야기 작년 말에 회고글(1년 차 개발자의 2023 회고)을 작성하며 열정을 불태우며 목표를 세우던 게 엊그제 같은데, 무기력증이 찾아왔다. 번아웃이 온 거냐고 묻느냐면 그것과는 다르다. 번아웃은 보통 열심히 산 사람이 모든 열정을 소모해 버린 뒤 극도한 피로감이 찾아오는 것을 의미하지 않는가? 지금의 내 상황과는 조금 달랐다. 주변 환경이 많이 변했고, 그로 인해 어떤 목표들은 이룰 수 없거나 이룰 필요가 없는 것이 되어버렸다. 목표가 사라짐에 따라 나의 열정은 갈 곳을 잃었고, 그 자리에는 무기력으로 채워졌다. 어떤 일이 있었는지 조금 더 자세히 풀어보고자 한.. 2024. 3. 31.
[Java] compiler message file broken 에러 compiler message file broken: key=compiler.misc.msg.bug arguments=11.0.13, {1}, {2}, {3}, {4}, {5}, {6}, {7} java.lang.AssertionError: Incorrect number of arguments; expected 4, found 0 에러 에러 발생 코드 에러가 발생한 코드를 살펴보자면 아래와 같다. REST API 호출 시 발생하는 예외를 executeApi() 메서드를 통해 공통적으로 처리했다. 이 코드 중에서 ParameterizedTypeReference(){} 부분에서 에러가 발생했다. @Slf4j @RequiredArgsConstructor @Service public class AuthUserA.. 2024. 3. 17.
[SpringDoc] 쿼리 파라미터가 이상하다? SpringFox에서 SpringDoc으로 마이그레이션하던 와중, 몇가지 이슈가 발생했다. (참고글: [SpringDoc] SpringFox -> SpringDoc 마이그레이션 일지) 그 중에서도 쿼리 파라미터와 관련된 이슈들을 해당 글에서 정리해보고자 한다. ❓ Swagger에서 @ModelAttribute request를 json 형태로 받는 현상 스프링에서 @ModelAttribute를 이용하면 쿼리 파라미터 목록을 DTO로 받을 수 있다. 이때 SpringFox에서는 아래와 같이 필드 하나하나를 따로 입력받을 수 있었다. 하지만 SpringDoc에서는 아래와 같이 json 형태로 입력하도록 변경되었다. 쿼리 파라미터를 따로 입력하고 싶다는 요구사항이 들어와서 방법을 고민하게 되었다. 💡 해결방법.. 2024. 2. 18.
[SpringDoc] 우리 enum이 달라졌어요 SpringFox에서 SpringDoc으로 마이그레이션 하던 와중, 몇 가지 이슈가 발생했다. (참고글: [SpringDoc] SpringFox -> SpringDoc 마이그레이션 일지) 그중에서도 enum과 관련된 이슈가 많았는데, 어떤 이슈가 발생했고 어떻게 해결했는지 그 방법에 대해 공유하고자 한다. 이모티콘 설명 - ❓ 이슈 - ✅ 선택한 방법 - ⬜️ 선택되지 않은 방법 ❓ name()이 아닌 toString() 값이 노출되는 현상 SpringFox에서 SpringDoc으로 전환하자, enum 타입의 필드들이 이상한 형태로 조회되었다. 예를 들어, 아래와 같이 Color라는 enum이 있다고 가정해 보자. @ToString public enum Color { ORANGE("red", "yello.. 2024. 1. 28.
[SpringDoc] SpringFox -> SpringDoc 마이그레이션 일지 목차 0. 서론 1. Swagger vs SpringFox vs SpringDoc 2. 왜 SpringFox보다 SpringDoc일까? 3. SpringDoc으로 마이그레이션하기 4. 트러블슈팅 0. 서론 최근 팀 코드에 SpringFox를 SpringDoc으로 전환하는 작업을 진행하고 배포까지 무사히 마쳤다. 해당 글에서는 SpringDoc이란 무엇이고, 왜 SpringDoc 마이그레이션 하게 되었는지, 어떻게 마이그레이션 했고 그 과정 중 어떤 이슈가 있었는지 내용을 정리하려 한다. 1. Swagger vs SpringFox vs SpringDoc 🟢 Swagger API 설계, 테스트, 문서화 등을 편리하게 이용할 수 있게 돕는 프레임워크 Swagger UI: OenAPI를 기반으로 시각적 문서.. 2024. 1. 14.
[한빛N MSA 후기] 일을 잘하는 방법 서론 얼마 전에 한빛미디어가 주최하는 세미나에 다녀왔다. 한빛N MSA라고 불리는 이 작은 세미나는 이미 10차례나 진행되었는데, 진행 완료된 세미나들의 영상을 모두 한빛미디어 사이트에 공개로 열어주시는 듯하다. 내가 들은 발표는 '이 회사는 나도 처음이라 - 첫 출근부터 끝까지 다 함께 레벨업'이라는 제목으로 일잘러가 되고 싶은 사람들에게 일잘러로 성장하는 방법을 공유해 주시는 내용이었다. 인상 깊었던 내용들 아래 내용은 발표를 제 임의로 요약하고 덧붙인 내용이 많습니다. 정확한 발표 내용은 이후 한빛미디어에 공개되는 영상을 확인 부탁드립니다. 1. 입사 후, 목표를 정하는 방법 나는 올해 초, 입사 직후에 방황했었다. 작년까지의 목표는 '취직'이었는데, 올해의 목표는 '회사 적응하기'로 바뀌었다. 그.. 2023. 12. 25.
1년차 개발자의 2023 회고 0. 서론 겨우 6개월 전에 상반기 회고를 작성했어서 2023 전체 회고는 패스해야지~라고 생각했었다. (입사 6개월차 신입의 회고 참고.) 헌데 막상 12월이 되어보니 올해를 되돌아보고 내년에 새로운 다짐을 정리하는 일에 회고글 작성만큼 효과적인 게 없다.🤣 그래서 올해도 작성한다. 올해 나는 무엇을 느꼈고, 앞으로 무엇을 하고 싶은지! 1. 올해 해낸 일 💻 회사 1월 3일 입사하고, 정규직 전환까지 무사히 마쳤다. 회사에서 노력한 일 중 뿌듯했던 일 몇 가지에 대해 이야기해 보겠다. -1) 팀 위키 개편 올해 한 일중 가장 뿌듯한 일이다. 입사하고 가장 힘들었던 점은 문서가 존재하지만 존재하지 않는다는 점이었다. 이게 무슨 말이냐 하면, 내가 필요한 문서가 어딘가에 존재는 한다. 다만 너무 옛날 문.. 2023. 12. 17.
[DB] update set에서 주의할 점 최근 update 쿼리를 짜면서 겪었던 실수를 공유해보려고 한다. 일단 간단한 테스트 데이터를 준비해보았다. insert into test_menu (name, price, deleted) values (' 커피 ', 5000, 0); 여기서 name의 앞뒤에 공백이 들어간 데이터들에 대해 update 작업을 실행하려고 한다. 아래는 name은 trim 처리하고, price를 1000으로 변경하는 쿼리이다. update test_menu set name = trim(name) and price = 1000 where name like ' %' or name like '% '; 하지만 실제 결과를 보면 뭔가 이상하다. name에는 0이라는 값이 들어갔고, price는 변경되지 않았다. 당연한 이야기다. 왜.. 2023. 11. 19.
반응형