일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- Java
- mysql 튜닝
- CKA 기출문제
- Linux
- 코틀린 코루틴의 정석
- 정보처리기사실기 기출문제
- PETERICA
- Kubernetes
- 정보처리기사 실기 기출문제
- Elasticsearch
- APM
- kotlin coroutine
- 정보처리기사 실기
- AI
- CloudWatch
- AWS EKS
- Spring
- aws
- IntelliJ
- 공부
- kotlin querydsl
- 오블완
- kotlin
- kotlin spring
- CKA
- Pinpoint
- minikube
- 기록으로 실력을 쌓자
- 티스토리챌린지
- Today
- Total
목록2024/08 (40)
피터의 개발이야기
ㅁ 들어가며K-PaaS는 한국형 클라우드 플랫폼 서비스(Platform as a Service)를 의미합니다.이 플랫폼은 클라우드 환경에서 애플리케이션을 개발, 실행, 관리할 수 있는 다양한 도구와 서비스를 제공합니다. ㅁ K-PaaS의 주요 특징ㅇ 릴리즈 및 다운로드K-PaaS는 정기적으로 릴리즈를 제공하며, 사용자들은 K-PaaS 코어와 서비스를 쉽게 다운로드할 수 있습니다. 이를 통해 개발자들은 최신 버전의 플랫폼을 활용하여 작업을 진행할 수 있습니다. ㅇ 가이드 문서Github를 통해 K-PaaS 사용에 대한 상세한 가이드 문서를 제공합니다. 이 문서들은 플랫폼 사용법부터 고급 기능까지 다양한 정보를 포함하고 있어 사용자들의 학습과 문제 해결에 도움을 줍니다. ㅇ 호환성 및 다양한 서비스K-Pa..
ㅁ 들어가며ㅇ 신규 프로젝트에서 Kotlin JDSL을 사용하게 되어, 관련 공부를 하면서 참조 목록과 주요 문법을 정리해 보았다. ㅁ Kotlin JDSL란? Kotlin JDSL은 Kotlin의 DSL(Domain Specific Language) 기능을 활용하여 JPA Criteria API를 더 직관적이고 간결하게 작성할 수 있도록 한다. KProperty를 사용하여 메타모델을 사용하지 않고도 안전한 코드를 작성할 수 있다. ㅁ 주요문법@Entitydata class Order( @Id @GeneratedValue val id: Long, val purchaserId: Long, val amount: Double)ㅇ Order를 가정해 보자. val query = queryF..
ㅁ 들어가며ㅇ QueryDSL의 Q클래스 생성 과정에서 Entity를 참조하지 못하는 문제가 발생하여, 주요 원인과 해결 방법을 정리하였다. ㅁ 에러/Users/peterseo/study/kotlin/spring-jpa-query-dsl/build/generated/source/kapt/main/org/peterica/springjpaquerydsl/domain/QProductsEntity.java:16: error: cannot find symbolpublic class QProductsEntity extends EntityPathBase { ^ symbol: class ProductsEntityㅇ 빌드 시 Q..
ㅁ 들어가며ㅇ Kotlin으로 Spring 프로젝트를 개발할 때, all-open과 no-arg 플러그인은 매우 유용하다. ㅇ 이 두 플러그인의 필요성과 역할을 잘 정리한 Kotlin으로 Spring 개발할 때을 보고 정리하였다. ㅁ all-open 플러그인의 필요성ㅇ Kotlin은 기본적으로 클래스와 메서드가 final로 선언된다. ㅇ 이는 상속을 막기 때문에 Spring의 CGLIB Proxy와 같은 기능을 사용할 때 문제가 발생한다. ㅇ CGLIB Proxy는 대상 클래스를 상속하여 프록시 객체를 생성하기 때문에, 대상 클래스가 open 상태여야 한다.ㅇ all-open 플러그인은 특정 어노테이션이 붙은 클래스에 대해 자동으로 open 키워드를 추가해준다. allOpen { annotatio..
ㅁ 들어가며ㅇ 리플렉션(Reflection)은 자바 프로그래밍 언어에서 실행 중인 프로그램이 자신의 구조를 검사하고 수정할 수 있는 기능이다.ㅇ 이를 통해 클래스, 인터페이스, 필드, 메서드 등의 정보를 런타임에 동적으로 접근하고 조작할 수 있다.ㅇ 리플렉션은 주로 컴파일 시점에 알 수 없는 객체를 다룰 때 유용하게 사용된다. ㅁ 리플렉션의 주요 기능필드 접근하기class Person {var name: String? = null var age: Int? = null constructor() // 기본 생성자 constructor(name: String) { this.name = name } constructor(age: Int) { this.age ..
ㅁ 들어가며ㅇ Elasticsearch와 연동하는 작업 중에 SSL 인증서 에러가 발생하였다. ㅇ 이를 분석하고 해결하는 과정을 글로 남긴다. ㅁ 에러 내용Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested targetㅇ SSL 통신을 위해서는 인증서를 교환해야하지만, 인증서를 찾을 수 없다는 에러 메시지이다.ㅇ [Elasticsearch] Elasticsearch + Kibana 설치하기 with Docker에서 curl로..
ㅁ 들어가며ㅇ Spring Data Elasticsearch를 Kotlin으로 예제 코드를 작성해보겠다. ㅇ 이 글은 Kotlin과 Spring Boot를 사용하여 Elasticsearch에 데이터를 저장하고, JPA로 등록 조회 방법을 정리하였다. ㅁ 관련 글ㅇ [kotlin] Spring Data Elasticsearch 샘플코드ㅇ [Elasticsearch] Elasticsearch + Kibana 설치하기 with Dockerㅇ [Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기ㅇ [Elasticsearch] Kibana Query Language 사용법 정리 ㅁ Elasticsearch API-KEY 생성ㅇ Elasticsearch와 통신하기 위해서 api-k..
ㅁ 들어가며ㅇ Spring Data JPA를 사용할 때 개발자들이 자주 마주치는 고민 중 하나는 데이터베이스 스키마를 어떻게 관리할 것인가 하는 점이다. ㅇ 특히 개발 과정에서 엔티티 클래스가 자주 변경되는 경우, 이를 데이터베이스 스키마에 반영하는 작업이 번거로울 수 있다.ㅇ 이런 상황에서 JPA의 ddl-auto 기능은 매우 유용한 도구가 된다. ㅁ 관련 글ㅇ [Spring] JUnit5 조건부 테스트 실행방법 ㄴ JPA의 ddl-auto 기능과 함께 사용하면 개발환경 별 자동 테스트 환경을 구축할 수 있다. ㅁ ddl-auto란?ㅇ ddl-auto는 JPA가 제공하는 기능으로, 애플리케이션 실행 시 데이터베이스 스키마를 자동으로 관리해주는 옵션이다. ㅇ 이 기능을 사용하면 엔티티 클래스의 변경사항..
ㅁ 들어가며ㅇ 새로운 프로젝트에서 코틀린을 처음 쓰게 되었다.ㅇ 또한 Querydsl도 사용하고 있어서 연습을 위해 프로젝트를 생성하는 과정을 정리하였다.ㅇ Querydsl은 SpringBoot 버전 마다 설정법이 달라 참조하는 설명마다 설정 방법이 달랐다.ㅇ 내가 성공한 기준으로 이력을 남겨놓는다. ㅁ 프로젝트 생성ㅇ Spring Data JPA와 MySQL Driver, Elasticsearch를 추가하였다. ㅁ 의존성 추가import org.jetbrains.kotlin.gradle.tasks.KotlinCompileplugins { id("org.springframework.boot") version "3.1.0" id("io.spring.dependency-management") ve..
ㅁ 들어가며ㅇ Kotlin Spring 프로젝트를 Gradle로 빌드할 때 다음과 같은 경고 메시지가 나타나 이를 해결하는 과정을 이력으로 남겨 본다.ㅇ 검색을 해보니 인텔리제이 변경, Gradle 경고 모드 변경, Gradle 버전 변경 방법들이 있어 각각 적용해 보았다. ㅁ 경고 메시지Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.ㅇ 이 경고는 프로젝트에서 사용 중인 Gradle 기능 중 일부가 더 이상 사용되지 않으며, Gradle 9.0과 호환되지 않을 수 있음을 나타낸다. ㅇ 이 문제를 해결하기 위한 몇 가지 방법을 찾아 보았다. ㅁ해결 방법 1: IntelliJ IDEA 설정 변..