11주차 (2023.01.02~01.06)

우롱차·2023년 1월 10일
0

나의 인턴일지

목록 보기
33/33

프로젝트 통계 batch 정보에 대한 문서를 소스코드와 비교해서 현행화 작업을 해달라는 요청을 받았다.
프로젝트 코드를 분석했지만 sql문이 복잡해서 깊게 이해하지 못했었는데, 문서 작업을 하면서 소스코드를 더 잘 이해할 수 있었다.

이제 Spring Boot의 Batch 동작 단계를 이해할 수 있고, 복잡한 sql문을 작성하지는 못하지만 무슨 의미인지 이해할 수 있게 되었다.
수집된 데이터들을 시간, 일간, 주간, 월간, 년간 기준으로 통계를 내야 해서 sql문으로 데이터를 select할 때 시간 기준을 설정해야 했는데 계산 방법이 꽤 복잡해 보였다.
그 중에서도 주간을 계산하는 과정이 어렵다는 것을 알게 되었다.

// 프로젝트에 작성되어 있는 일주일 시간 계산 방법
b.create_date between DATE_FORMAT(DATE_SUB(now(),Interval 1 week) - INTERVAL WEEKDAY(now()) DAY, '%Y%m%d') AND DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -1 DAY), '%Y%m%d')

곧 통계 batch와 관련된 코드 수정이 있을 것 같다.
Batch 시간을 바꿔야 해서 sql문의 시간 기준도 수정해야 하는데, 아직 계산식을 이해하지 못해서 더 공부해야 할 것 같다.

코드 수정 작업을 하고 나면 sql문에 대한 이해도가 많이 높아지겠지? 😁


쉘 스크립트에 curl 명령어로 작성되어 있던 프로젝트 테스트 케이스를 포스트맨에 정리했다.
postman에서는 curl 명령어를 주소창에 바로 입력하는 것이 아니라, 다른 방법이 있다는 것을 알게 되었다.
(참고: https://intrepidgeeks.com/tutorial/import-annoying-curl-command-postman)

Postman에 curl 명령어 가져오기

  • File - Import - Raw text - curl 명령어 입력하기
    • Raw text에 curl 명령어를 입력하면 postman에서 자동으로 curl 명령어를 기반으로 request를 만들어준다.
    • 터미널에서 .cmd 파일로 실행할 때는 data.json 파일을 따로 만들어두어
      curl -X POST -d @data.json -H "Content-Type: application/json" -H "Authorization: Basic <Base64로 인코딩된 값>" <주소>
      형식으로 데이터를 참조할 수 있었지만, postman으로 request를 보낼 때는 Body에 데이터를 직접 써주어야 한다.

Spring Boot를 하다가 Vue를 하니 헷갈리는 부분이 많았다 😵

Spring Boot로 로그인, 회원가입을 구현할 때 Spring Boot 내에서 jsp로 view를 작성해서 controller가 model에 데이터를 담아 view에 전달해줬는데, Vue를 사용하면 데이터가 어떻게 전달되는 건지 이해가 잘 되지 않아 어려웠다.

Vue와 Spring Boot를 연동하면 Spring Boot에서는 Rest API로 데이터를 처리하는 백엔드 작업만 할 수 있게 되고, Vue에서는 화면에 보여주는 view를 만드는 프론트 작업만 하게 되어 프론트엔드와 백엔드를 완전히 분리할 수 있는 것이었다!

헷갈리던 부분이 해소가 되니 후련한 기분이었다 😊

이번주 과제는 Vue.js 프로젝트를 생성하고 구조 및 실행, 빌드, 배포 방법을 파악하는 것이었다.
아직 Vue는 어렵게 느껴지지만, 구조를 공부하며 각 파일과 디렉토리의 역할을 알고 나니 전반적으로 조금 알게 된 것 같다.

다음주 과제는 Vue.js와 Spring Boot를 연동하여 Spring Boot에서 보내준 데이터를 Vue.js로 화면에 보여주는 것이다.
또 하나를 배우게 될 것 같아 설레고 기대된다 😙

profile
아직 따끈따끈합니다🍵

0개의 댓글