전체 글(52)
-
99클럽 1일차 TIL: 쿼리 성능
#1. 오늘의 학습 키워드 SQL 쿼리에서 between 과 부등호의 성능 차이 myBatis 에서 쿼리로 어떤 날짜를 뜻하는 컬럼값을 가지는 테이블에서 날짜 범주 ( start_date 와 end_date ) 사이 조건에 부합하는 행들만 뽑아오고 싶을 떄: 아래와 같은 두 가지 방식이 있다. 이때 좋은 가독성을 가지는 코드는 between 을 사용한 조건문이지만, pr Review 로 부등호가 더 낫다는 피드백을 받았다. SELECT * FROM table_ WHERE date BETWEEN '20240101' AND '20241231' SELECT * FROM table_ WHERE date >= '20240101' AND date
2024.04.04 -
Java Spring - 공부 여정
HTML 삽입 미리보기할 수 없는 소스 #1. 스프링 / 스프링 부트란 스프링 자바 기반 웹 앱 프레임워크 스프링 구조 spring은 자바 객체와 라이브러리들을 관리해주며, 톰켓과 같은 WAS 가 내장되어 있어 자바 웹 앱을 구동할 수 있음 경량 컨테이너 (bean) 로 자바 객체를 spring 안에서 관리. 객체의 생성 및 소멸과 같은 생명 주기를 관리하며, spring 컨테이너에서 필요한 객체를 가져와 사용. spring의 특징 IOC / DI IOC - 제어의 역전 DI - 의존성 주입 어떤 객체를 사용하는 주체가 객체를 직접 생성하는 게 아니라 객체를 spring에서 생성해서 사용하려는 주체 객체에 주입시켜주는 방식. 직접 생성하는 것보다 외부에서 생성 관리하는 이 방식이 주체 객체와 대상 객체의..
2024.03.16 -
Git - 간단한 명령어 모음집
HTML 삽입 미리보기할 수 없는 소스 #0. 개요 본인을 위한 깃허브 명령어 모음집. 웬만한 것은 UI로 해결이 가능하지만 커맨드도 익숙해지면 편한 것 같다. #1. 기본 연결 git clone //링크 git config --global user.name git config --global user.email 커밋 UI로 해결 가능 //수정사항 전부 체크 git add . git commit -m "커밋 메시지" // 커밋 되었는지 확인 git status // 깃 푸시 git push origin 브랜치명 //(main / develop 등, 혹은 생략해도 됨) 원격과의 연동 주의! 여기서 확인하는 원격은 로컬에서 기억하고 있는 원격 브랜치다. 그렇기에 원격과 깃서버의 싱크를 수시로 맞춰주는 것이 ..
2024.03.15 -
아마존 EC2 인스턴스를 통한 서버 배포
HTML 삽입 미리보기할 수 없는 소스 #0. 개요 아마존 ec2 서비스로 서버를 실제로 만들어 서버를 구축하고 싶은데, 매번 할 때마다 조금씩 찾아봐야 했어서 졸업프로젝트를 진행하는 과정에서 겪었던 문제와 함께 서버 구축 과정을 정리하였다. 커맨드 위주 #1. 초기 세팅 1. 아마존 ec2 인스턴스 시작 https://codemonkyu.tistory.com/entry/AWSEC2-인스턴스-생성하기-12 우분투 선택 키페어 챙기기 보안그룹설정 탄력적 ip 설정 https://velog.io/@mintmin0320/AWS-EC2를-활용한-Nest.js-서버-배포 인바운드 규칙 포트번호 유의! 💡 진입 명령어: (window: cmd 창) ssh -i "키페어 이름.pem" ubuntu@ec2-ip.ip...
2024.03.15 -
스웨거(Swagger) - @ExampleObject value 속 긴 String 분리 과정 정리
HTML 삽입 미리보기할 수 없는 소스 #0. 개요 controller에서 put / post method API 를 swagger 에 작성할 때, 스키마 뿐만 아니라, ExampleObject 코드로도 request body 가 어떤 모양이어야 하는 지 프론트엔드에게 설명을 해주고 싶다. 원할한 프론트 - 백 소통을 위해 그러나, controller의 코드가 swagger example value 문자열 때문에 너무 길어져서 백엔드 코드 가독성이 떨어졌다 심지어 exampleObject가 controller 마다 여러개 일 수도 있고, request Body Dto Class가 property 가 많으면 종잡을 수가 없다. @PostMapping("/item") @Operation(description..
2024.03.15 -
스웨거(Swagger) - 어노테이션 간단 정리
HTML 삽입 미리보기할 수 없는 소스 #0. 개요 원활한 프론트 - 백 소통을 위해, 개발하는 동시에 API 명세서를 만들어주는 swagger를 작성하는데에 소홀히하면 안 된다. 백엔드 개발자는 코드를 직접 구현하여서, 스웨거를 통해 API 가 잘 호출되고, 결과가 이상적으로 리턴만 되는 것을 보면 스웨거도 잘 구현이 되었다고 생각을 하지만, 코드를 보지 못 하는 프론트엔드 개발자 입장에서는 각 API의 response / request 가 어떤 모양인지, 또한 각 Dto의 property 가 값의 유효 범위가 어떻게 되는지, 의미하는 바가 뭔지 알 수 있길 원한다. 그렇기에 스웨거가 제공해주는 여러 어노테이션을 활용해 스웨거 문서를 직관적으로 꾸며보자 #1. 어노테이션 종류 1. @Operation ..
2024.03.14