일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정보처리기사실기 기출문제
- MySQL
- AWS EKS
- Java
- kotlin spring
- Spring
- Kubernetes
- AI
- 코틀린 코루틴의 정석
- kotlin
- mysql 튜닝
- kotlin querydsl
- 정보처리기사 실기
- 정보처리기사 실기 기출문제
- kotlin coroutine
- Elasticsearch
- aws
- CKA 기출문제
- CKA
- 티스토리챌린지
- PETERICA
- minikube
- Pinpoint
- 기록으로 실력을 쌓자
- Linux
- 공부
- CloudWatch
- APM
- 오블완
- IntelliJ
- Today
- Total
목록분류 전체보기 (781)
피터의 개발이야기
ㅁ 들어가며ㅇ [Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기에서 Elasticsearch를설치하였다.ㅇ 공식 문서 - Install Elasticsearch with Docker의 내용을 토대로 docker 설치과정을 맥미니에서 수행해 보았다.ㅇ 테스트 용으로 단일 노드 클러스터로 진행하였다. ㅁ 관련 글ㅇ [kotlin] Spring Data Elasticsearch 샘플코드ㅇ [Elasticsearch] Elasticsearch + Kibana 설치하기 with Dockerㅇ [Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기ㅇ [Elasticsearch] Kibana Query Language 사용법 정리 ㅁ elasti..
ㅁ 들어가며ㅇ ktlint는 Kotlin 코드의 스타일을 체크하고 포맷팅하는 도구다.ㅇ 이 글에서는 Spring Boot와 Kotlin을 사용하는 프로젝트에 ktlint를 설정하는 방법을 설명한다. ㅁ build.gradle.kts 파일 수정plugins { id("org.jlleitschuh.gradle.ktlint") version "12.1.0"}ktlint { verbose.set(true) outputToConsole.set(true) coloredOutput.set(true) reporters { reporter(org.jlleitschuh.gradle.ktlint.reporter.ReporterType.CHECKSTYLE) reporter(..
ㅁ 들어가며ㅇ [Kotlin] Spring Boot와 Kotlin으로 QueryDSL 페이징 처리하기을 작성하면서 Circular view path 에러가 발생하여 해결방법을 정리하였다. ㅁ 에러 내용jakarta.servlet.ServletException: Circular view path [products]: would dispatch back to the current handler URL [/products] again. Check your ViewResolver setup! (Hint: This may be the result of an unspecified view, due to default view name generation.)ㅇ REST API 컨트롤러에서 뷰 리졸버(View Reso..
ㅁ 들어가며 지난 글, [Spring] Kotlin으로 JPA Querydsl 세팅에서 Spring Boot와 Kotlin을 사용하여 QueryDSL을 적용한 프로젝트를 구성하였다. QueryDSL을 사용하면 동적 쿼리를 쉽게 작성할 수 있으며, Spring Data의 페이징 기능을 활용하면 대량의 데이터를 효율적으로 처리할 수 있다. 이번 글에서는 Spring Boot와 Kotlin을 사용하여 QueryDSL을 적용한 프로젝트에서 페이징 처리를 구현하는 방법을 정리하였다. ㅁ Repository 인터페이스 생성import org.springframework.data.domain.*import org.springframework.data.jpa.repository.JpaRepositoryinterfac..
ㅁ 들어가며ㅇ [Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기을 하면서 발생한 https 에러를 해결하는 과정을 정리하였다.ㅇ 이 해결방법은 로컬 개발환경에서 테스트를 위한 해결방법이다. 그래서 운영환경에서는 인증서 설치 과정을 수행해야 한다. ㅁ 에러 상황# 통신 수행$ curl -X GET "localhost:9200/?pretty"# 에러 내용received plaintext http traffic on an https channel, closing connection Netty4HttpChannel# row logs{"@timestamp":"2024-07-28T21:48:38.081Z", "log.level": "WARN", "message":"receiv..
ㅁ 들어가며ㅇ 프로젝트 진행 중에 Elasticsearch에 비정규화 테이터를 저장하는 요건이 발생하여 개인적으로 Elasticsearch를 집에 설치해 보았다.ㅇ 이 글은 Docker로 Elasticsearch 설치 및 테스트하는 과정을 정리하였다.ㅇ 기본적으로 도커는 설치 되어 있어야 한다. ㅁ 관련 글ㅇ [kotlin] Spring Data Elasticsearch 샘플코드ㅇ [Elasticsearch] Elasticsearch + Kibana 설치하기 with Dockerㅇ [Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기ㅇ [Elasticsearch] Kibana Query Language 사용법 정리 ㅁ Elasticsearch 이미지 다운로드docker ..
ㅁ 들어가며ㅇ JPA를 사용하면서 CascadeType.REMOVE와 orphanRemoval=true 옵션의 차이를 제대로 이해하지 못하였다.ㅇ 두 옵션 모두 엔티티 간의 관계를 관리하는 데 사용되지만, 그 목적과 동작 방식에는 차이가 있다.ㅇ 이 글에서는 두 옵션의 차이를 설명하고, 언제 어떤 옵션을 사용해야 하는지 알아보았다.ㅇ [JPA] CascadeType.REMOVE vs orphanRemoval=true 차이점 알아보기을 참조하여 작성하였다. ㅁ CascadeType.REMOVEㅇ 부모 엔티티가 삭제될 때, 연관된 자식 엔티티도 함께 삭제되도록 설정하는 옵션이다.@Entityclass Parent( @Id @GeneratedValue(strategy = GenerationType.IDE..
ㅁ 들어가며 MacBook M3에서 로컬에서 빌드한 Docker 이미지가 개발 환경에서 문제가 발생하는 경우가 있다. 그 이유는 주로 아키텍처 호환성 문제 때문일 수 있다. MacBook M3는 ARM 아키텍처를 사용하지만, 많은 서버 환경은 여전히 x86 아키텍처를 사용한다. 이로 인해, ARM에서 빌드한 이미지를 x86 환경에서 실행하려고 하면 문제가 발생할 수 있다. ㅁ 해결방법ㅇ 이 문제를 해결하기 위해 Colima를 사용하여 Docker 이미지를 빌드하는 것이 도움이 될 수 있다.ㅇ Colima는 MacOS에서 Docker를 실행하기 위한 경량의 대안으로, 기본적으로 QEMU를 사용하여 다양한 아키텍처를 지원한다.ㅇ 다음은 Colima를 사용하여 멀티 아키텍처 Docker 이미지를 빌드하는 방법..
ㅁ 들어가며ㅇ 개발서버 접속하기 위해 SSH 키를 생성하고 등록하는 과정을 수행하게 되었다.ㅇ 이 글에서는 ssh-keygen 명령어를 사용하여 SSH 키를 생성하고 사용하는 방법을 정리하였다. ㅁ SSH 키란?ㅇ SSH 키는 원격 서버와 안전하게 통신하기 위해 사용되는 암호화 키이다.ㅇ SSH 키를 사용하면 비밀번호 대신 공개 키와 개인 키 쌍을 이용하여 인증할 수 있다. ㅁ SSH 키 생성ssh-keygen 명령어 실행# ssh-keygen 명령어 실행$ ssh-keygen -t rsa -b 4096 -C "your_email@gmail.com"Generating public/private rsa key pair.ㅇ 터미널을 열고 위와 같이 ssh-keygen 명령어를 실행하여 SSH키를 생성한다...
ㅁ 들어가며ㅇ 입력값에 대한 유효성 검증을 코드상에서 하나하나 처리하는 것은 번거롭다. ㅇ Spring에서 제공하는 Validation 기능을 사용하면 Controller 단과 별개로 입력값을 간편하게 검증할 수 있다. ㅇ 이 글에서는 Spring Validation을 Kotlin에서 사용하는 방법을 정리한다.ㅇ Kotlin, Spring Validation 이용한 입력 데이터 유효성 검증의 글을 보고 실습을 수행하였다. ㅁ Gradle 설정implementation("org.springframework.boot:spring-boot-starter-validation")ㅇ Spring Boot 2.3 버전부터 spring-boot-starter-validation 의존성을 명시해야 @Valid를 사용할 ..