현대화 프로젝트를 진행하면서 기존에 사용하던 MyBatis 기반의 시스템을 JPA 기반으로 전환하게 되었다. 이 과정에서 가장 먼저 발생한 문제는 Entity 클래스의 대량 생성이다.기존 시스템은 테이블 정보가 Dataware에 잘 명시되어 있었지만, 이를 기반으로 매번 수작업으로 Java Entity 클래스를 생성하는 것은 비효율적이라고 생각했다. 수천 개에 이르는 테이블 정보를 일일이 열람하고, 이에 맞는 Java 클래스를 작성한다는 것은 단순 반복 작업일 뿐만 아니라 많은 비용이 소모된다고 생각했다. 게다가 Oracle의 데이터 타입과 Java의 데이터 타입 간 매핑 기준이 명확하지 않아, 매번 다음과 같은 고민이 뒤따랐다.Number(10)은 Integer로 두는게 맞을까? Long 로 두는게 맞..
회사의 업무에 도움이 되고자 데이터 마이그레이션 프로그램을 구현하면서 다중 데이터소스 구성을 적용했다.MySQL과 PostgreSQL 등 서로 다른 DB 간의 데이터를 이전해야 했기 때문에, 각 데이터소스에 대한 분리 설정이 필요했고, 이를 위해 Spring Boot 환경에서 @Configuration 기반의 다중 데이터소스 구성을 적용했다.그런데 단순히 쿼리를 날려 직접 DB에 접근할 때는 문제가 없었지만, Controller를 통해 데이터를 요청할 때는 응답 속도가 눈에 띄게 느려지는 현상이 발생했다.처음에는 단순히 데이터양이나 네트워크 지연 문제일 수 있겠다고 생각했지만, 실제 디버깅을 진행하면서 Datasource 설정 자체에서 매 요청마다 커넥션 비용이 크게 발생하는 것을 발견하게 되었다. 이 ..
✅ 스파르타코딩클럽 내일배움캠프 이전의 삶스파르타 이전의 나의 삶은 비전공자와 전공자 이 둘의 성향이 반반한 학과에서 공부를 하는 삶을 가졌었다. 비록 해당 학과가 각각의 분야에서 깊게 학습하기에는 어려운 환경이였지만, 스스로 여러 분야를 접목해보면서 나의 적성이 어떤 것인지, 진정으로 내가 하고싶은 것이 무엇이었는지 파악하기에는 충분한 시간이었다. 군대를 전역한 후, 복학하여 나는 대학에서 프로그래밍에 흥미를 느껴 해당 분야로 진로를 나아가기로 결심하였다. 프로그래밍 기초부터 시작하여 알고리즘, 프로젝트까지 내일배움캠프의 이전에 이미 학습을 했던 상태이다. ✅ 개발자가 되기로 결심한 계기나는 평소에 밖으로 나가면 단순히 땅을 보며 걷는 것이 아니라 주변을 관찰하고 개선 가능성을 머릿속으로 상상하는 습..
이번 팀은 Spring 입문과 숙련 기간이 겹쳐 다른 과제 기간과 달리 4주라는 시간을 함께 보냈다. 🦑 사실 4주라는 시간이 짧은 시간이라고 생각할 수 있지만 어떤 시점에서 보면 길게도 볼 수 있는 시간이라고 생각을 한다. 이번 팀이 긴 시간을 함께 하는 만큼 팀과의 합심이 좋지 않다면 정말 괴로운 시간을 보낼수도 있겠다 생각을 하였다. 하지만 그 생각은 첫날 팀과의 첫 대화를 나누는 시간에 먼지처럼 사라졌다. 우리 팀은 다른 팀보다 더 활발하고 재치있으며, 무엇보다 학습에 열정적이라고 자부할 수 있었다. 지난 프로그래밍 기초 주차에서 부족했었던 부분을 보완하기 위해서 만남을 가진 첫째날 팀들의 프로그래밍 역량을 파악한 뒤 Spring입문을 들어가기 앞서 Java에 대한 역량을 강화하는데 집중하는 시간..