회사에서 조금 복잡한 쿼리를 작성할 일이 생겨서 정리도 할 겸 글을 남겨봅니다. 전 회사에서는 개발을 하면서 직접 쿼리를 다루는 일이 많지 않고 간단한 쿼리만 사용하는 경우가 많았는데 이번에는 제 기준 조금 복잡한 쿼리를 작성하게 되었습니다. 🥲 상황을 살펴보면 다음과 같습니다. (실제 회사에서 사용하는 DB를 토대로 한 간단한 예제입니다...) 미션을 생성하게 되는데 해당 미션을 저장하는 DB와 미션에 대한 상세 사진을 저장하는 DB가 별도로 존재합니다. 하나의 미션에는 여러 장의 사진을 등록할 수 있습니다. 미션 목록 조회 시 미션 정보와 함께 미션별 가장 처음에 올린 사진 하나만을 조회해야 합니다. 먼저 DB간 ERD를 살펴보면 다음과 같습니다. 미션 정보를 조회하면서 해당 미션에 맞는 사진을 하나..
새로운 회사에서 GitLab을 사용하게 되어(이전 회사에서도 잠깐 썼지만...) ssh key를 생성하고 등록하는 방법을 간단하게 정리해보려 합니다. 1. ssh 키 생성 먼저 루트의 .ssh 폴더로 이동해서(없다면 생성) 아래 명령을 통해 RSA 키를 생성합니다. $ ssh-keygen -t rsa -C "EMAIL_ADDRESS" -b 4096 2. gitlab 접속 후 키 등록 이후 깃랩에 로그인하고 User Settings > SSH Keys로 접속합니다. 그런 다음, ~/.ssh/id_rsa.pub 를 복사해서 붙여 넣고 Add key를 누르면 ssh 키가 등록됩니다. private key를 등록하지 않도록 주의하세요!!! 이제 아이디, 패스워드 없이 SSH 방식을 통한 git clone 등 여..
Annotation이란? 어노테이션은 사전적 의미로는 주석이라는 뜻입니다. 자바에서 사용될 때의 어노테이션은 코드 사이에 주석처럼 쓰여서 특별한 의미, 기능을 수행하도록 하는 기술을 말합니다. 즉, 프로그램에게 추가적인 정보를 제공해주는 메타데이터(meta data: 데이터를 위한 데이터)라고 볼 수 있습니다. Annotation을 사용하는 용도 Annotation을 사용하는 용도는 아래와 같이 크게 3가지가 있습니다. 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공 소프트웨어 개발툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보 제공 실행시(런타임시)특정 기능을 실행하도록 정보를 제공 Spring에서 제공되는 대부분의 Annotation은 런타임 시 특정 기능을 실행하도록 정보를 제..
search Docker Hub에서 이미지를 검색 pull Docker Hub에서 이미지 받기 docker pull : $ docker pull ubuntu:latest images 받은 이미지 목록 출력 docker images run 이미지를 컨테이너로 생성 docker run $ docker run -i -t --name hello ubuntu /bin/bash -i(interactive), -t(Pseudo-try) 옵션을 사용하면 Bash 셸에 입력 및 출력을 할 수 있습니다. --name 옵션으로 컨테이너 이름을 지정할 수 있습니다. ps 컨테이너 목록 확인 -a 옵션을 사용하면 정지된 컨테이너까지 모두 출력하고 옵션을 사용하지 않으면 실행되고 있는 컨테이너만 출력합니다. start 컨테이너 ..
새로운 회사에서 프로젝트를 진행하면서 Java Version에 대한 얘기가 나왔다. 기존에는 LTS 버전을 아무 생각없기 기본으로 사용해 왔었는데 17이 LTS로 되면서 어떤 차이가 있고 어떤 점을 고려해서 스펙을 선택하는 것이 좋은지 고민이 되었다. ❗️물론 많은 차이를 알지는 못하지만... 우선 주요 내용을 정리해보려고 한다...ㅠ Java 8 Lambda Java 8 이전에는 a new Runable 과 같은 인스턴스 생성을 할 때마다, 익명의 내부 클래스를 작성해야 했다. Runnable runnable = new Runnable(){ @Override public void run(){ System.out.println("Hello world !"); } }; 하지만 람다를 사용하면 아래와 같이 ..
- Total
- Today
- Yesterday
- DFS
- 프로그래머스
- Combination
- sort
- array
- CodePipeline
- AWS
- cloudfront
- EC2
- 소수
- search
- Algorithm
- CodeCommit
- Baekjoon
- CodeDeploy
- ECR
- 수학
- SWIFT
- BFS
- java
- permutation
- programmers
- 에라토스테네스의 체
- ionic
- spring
- map
- string
- 순열
- Dynamic Programming
- 조합
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |