본문 바로가기

개발44

[macOS/Intellij/Oracle] ventura 13.0 업데이트 이후 로케일을 인식할 수 없습니다.(SQL Error: 17176) - 해결 Oracle JDBC Driver를 사용하는 개발자라면 언젠가는 한번 만나봤을 법한 상황이다. 보통 위 상황은 Mac Os 업데이트 이후 로케일이 초기화되면서 발생하는데 ventura 13.0 이전 버전에서는 mac 시스템 설정 - 일반 - 언어 및 지역 - 다른 국가로 변경 - 다시 대한민국으로 변경 위 편법으로 쉽게 해결이 가능했다 하지만 이번 ventura 13.0 버전으로 업그레이드 하면서 위 방법이 통하지 않았다. 그래서 실행하고자 하는 서비스의 jvm option 값을 주어 위 상황을 해결하였다 VM 옵션을 활성화 한 이후 -Duser.language=en -Duser.country=US 값을 넣어준다 vm 옵션 값을 넣어 준 후 서비스를 실행하면 로케일을 인식할 수 없다는 에러는 발생하지 않는다 2022. 11. 8.
[Java] 인수값 유효성 검증 - 표현 계층 vs 응용 계층 서비스를 운영하는 환경에서는 Language와 Framework를 막론하고 Inbound 된 데이터에 대한 유효성 검증이 반드시 필요하다 유효성 검증에는 인자 값에 대한 검증, 인수 값에 대한 검증, 비즈니스 로직에 대한 검증과 같은 다양한 종류의 유효성 검증이 있다 인자 값에 대한 검증은 왠만한 프레임워크의 표현 계층에서 알아서 수행해주고 비즈니스 로직에 대한 검증은 응용 계층에서 수행하는 것이 지극히 일반적이다 하지만 특히 그 중에서도 인수 값에 대한 검증을 표현 계층에서 하느냐, 응용 계층에서 하느냐에 대한 의견이 다양해서 이번 글에서는 각 계층에서 인수 값에 대한 검증을 가져갔을 때의 특징 및 장단점에 대해 비교해 보고자 한다 '이름'이라는 데이터를 생성할 때, 이름의 글자 수에 대한 유효성 검증.. 2022. 10. 23.
[SpringBoot/Gradle] ClassNotFound Exception (Feat. implementation & api) 개발을 즐기는 우리의 곁에는 운명의 짝꿍과도 같은 존재가 있습니다. 바로 예외(Exception) 입니다 우리에게는 너무 친숙하지만 되도록 마주치고 싶지 않은 NPE(NullPointerException)부터 친절한 IDE 선생님 덕분에 요즘은 마주치기 조차 힘든 ClassNotFoundException까지 다양한 에외 상황들을 인식하고, 대비하며 개발을 이어나갑니다 이번 글에서는 그중에서도 마주치기 힘들었던 ClassNotFoundException를 만난 경험을 공유하고자 합니다 먼저 필자는 다음과 같은 서비스 구조의 프로젝트를 진행 중이었습니다. A 프로젝트 -> B 프로젝트 -> C 라이브러리 A 프로젝트.gradle ... implementation(B) ... B 프로젝트.gradle ... i.. 2022. 8. 7.
[Java] Armeria Documentation Service 생성하기 Armeria에서는 간단하게 구현이 가능한 API Document에 대한 기능을 제공합니다 Armeria에서 제공하는 기능이 너무나도 간단하고 편리해서 해당 기능을 사용하면 API Documentation 과정에 소요되는 시간을 매우 효율적으로 사용할 수 있습니다 이번 글에서는 Armeria에서 제공하는 Document Service를 사용해보겠습니다 참고로 본 글은 Armeria Restful API Service가 존재함을 전제합니다. 아직 Armeria API 서버를 생성하지 않았다면, 아래 과정을 따라오시는 것을 추천드립니다 - [Java] Armeria - Restful API 서버 구축하기 - (1) Application 생성 - [Java] Armeria - Restful API 서버 구축하.. 2022. 7. 4.
반응형