전체 글(47)
-
JSON_ARRAYAGG와 JSON_OBJECTAGG 차이 (Mysql 8.0)
JSON_ARRAYAGG() 함수와 JSON_OBJECTAGG() 함수는 MySQL에서 JSON 데이터를 집계하는 데 사용되는 함수로, 각각 다른 형태의 JSON 구조를 생성한다. 이 두 함수의 차이점은 생성되는 JSON 데이터의 형태에 있다.1. JSON_ARRAYAGG()JSON_ARRAYAGG() 함수는 JSON 배열을 생성, 여러 개의 값을 한 배열로 묶어서 JSON 형태로 반환할 때 사용된다. 쉽게 말해, 특정 컬럼의 값을 순차적으로 모아서 하나의 배열을 만드는 역할을 한다.예제:다음과 같은 테이블이 있다고 가정id name1John2Jane3Smith이 데이터를 JSON_ARRAYAGG()로 집계하면:SELECT JSON_ARRAYAGG(name) AS names_arrayFROM employ..
2025.02.12 -
‘com.docker.vmnetd’에 악성 코드가 포함되어 있어서 열리지 않았습니다. (docker-desktop Mac인증서 issue)
Macbook Air M3 칩을 사용하고 있는데 갑자기 Docker Desktop 앱이 실행 안되는 오류가 발생하고 있다. https://docs.docker.com/desktop/setup/install/mac-install/위 url에 들어가 docker desktop을 재설치해도 마찬가지로 오류가 발생하고 있다.도커 공식 repository에 Malware detection prevents Docker Desktop to start 라는 issue에 해당 오류와 관련된 내용들이 나오는데check.sh.txt를 다운받고 이름을 변경 한 뒤 ./check.sh /Library/PrivilegedHelperTools/com.docker.vmnetd 를 실행하라는 내용이 나온다.check.sh#!/bin/..
2025.01.15 -
조인 테이블이 있으면 다대다 관계다?
회사에서 ORM을 사용하고 있는데 내가 보기에는 @ManyToMany를 사용하는게 적절해 1대다 관계를 양측에 만들고 중간테이블을 엔티티로 만들어 놓을 것을 보면서 다대다 관계에 대한 이야기를 나누었는데 상대방이 생각하는 다대다 테이블과 내가 생각하는 다대다 관계 테이블이 달라서 이야기를 나누다가 작성하게 되었다.결론만 간략하게 이야기 한다면 나의 의견은 중간테이블(User_Project)이 존재하는 User 테이블과 Project 테이블이 존재 한다면 User 테이블과 Proejct 테이블은 서로 N:M 관계 즉 다대다 관계라고 보는것이 내 생각이였고 상대방은 User테이블에 Project테이블의 FK 값이 직접적으로 존재하지 않으니 다대다 관계가 아니라는 것이다. 중간테이블을 만들게 되면 User테이..
2024.12.28 -
Nest, Adonis, Express 비교 하기
Node.js 환경에서 API 서버를 개발 할 때 처음엔 express를 사용했었다 그 당시에는 express가 너무 자유로워서 개발자들 마다 실력차이가 심하고 보일러플레이트 마다 안티패턴이 존재하거나 상대적으로 적을 수 있다고 생각이 들었다. 그러다가 nest.js를 접하면서 spring boot와 많이 닮아있는 nest.js가 만족스러웠는데 Lalavel에 영향을 받아 비슷한 구조를 가진다고 한다.공식문서, Chat GPT, 기타 검색을 통해 각 프레임워크에 차이가 궁금했는데 GPT의 답변이 요약과 정리가 잘 되어있다는 생각이 들었고 이해하는데 도움이 많이 된다는 생각이 들어 질문과 답변을 비루하게 나마 포스트로 남긴다.AdonisJS 와 nest.js의 특징, 장점, 단점에 대해 설명해줘Adonis..
2024.12.09 -
Nest.js 공부하기 (2)
Custom Pipe 만들기커스텀 파이프를 만들기 위해서는 PipeTransForm을 반드시 implements 해야 하고 transform 메서드를 오버라이드 해서 구현해야 한다.자바를 사용한 개발자라면 익숙한 방식 일 것 같다.import { ArgumentMetadata, PipeTransform } from '@nestjs/common';export class BoardStatusValidationPipe implements PipeTransform { transform(value: any, metadata: ArgumentMetadata) { throw new Error('Method not implemented.'); }}기본적으로 PipeTransform을 implem..
2024.11.27 -
Nest.js 공부하기 (1)
Nest.js란위 이미지는 구글 트렌드에서 나오는 Nest.js의 최근 5년간의 관심 변화량이다.Nest.js는 Node.js의 서버 애플리케이션 프레임워크로, TypeScript를 기본적으로 사용하고, 모듈러 아키텍처와 의존성 주입(DI)을 통해 유지보수성과 확장성이 높은 애플리케이션을 만들 수 있도록 설계되었고Angular에서 영감을 받아 비슷한 구조와 패턴을 따른다고 한다.Node로 백엔드 개발을 할 때 많은 선택을 받았다는 것을 알고 있었고 사용 해보고 있다.Angular에서 많은 철학적 영향을 받았다고 하는데 나는 Nest.js를 전혀 모르는 상태에서 코드를 보았을 때 Spring boot와 유사한 느낌을 많이 받았다.Javascript는 너무 자유롭고 Standard를 찾기 어렵다는 생각이 많..
2024.11.04