일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spring Data JPA
- Kubernetes
- bean
- cd
- Spring JPA
- spring kafka
- PAGING
- CodePipeline
- JPA
- ECS
- QueryDSL
- git
- transactionaleventlistener
- Entity
- Streams
- CI
- spring
- mirror maker2
- centos7
- topic생성
- mysql
- AWS
- API
- consumer
- offsetdatetime
- producer
- K8s
- kafka
- entity graph
- Kotlin
- Today
- Total
목록spring (14)
Yebali

요즘엔 다양한 방식의 인증/인가 시스템이 존재합니다AWS Cognito나 Firebase Authentication 등 클라우드 서비스도 있고,Keycloak 같은 IAM(Identity and Access Management solution)도 존재합니다. 이렇게 다양하고 좋은 서비스들이 있지만 오늘은 가장 기본적인(?)Spring Security으로 JWT을 발급해 주는 인증/인가 서비스를 만들어보려고 합니다. 아래 내용은 Spring Security를 사용해 회원을 관리하고,로그인에 성공하면 해당 회원의 권한이 인가된 JWT를 발급하고, 발급된 JWT를 사용해 API를 호출하는 예시입니다. 의존성 추가// gradle.build.ktsdependencies { // Spring Security..

Data Class란? Kotlin에서 Data Class는 toString(), hashCode(), equals(), copy()를 자동으로 만들어주는 Class를 말한다. 사용법은 class 앞에 ‘data’라는 keyword를 붙여주면 된다. data class User( val name: String, val age: Int ) Data Class의 특징 상속 받을 수 없다. abstract, open, sealed, inner를 붙일 수 없다. 1개 이상의 프로퍼티를 가지고 있어야 한다. 이렇게 편리한 메서드를 자동으로 만들어주는 Data Class를 Entity Class를 만들 때 사용할 수 있을까? Entity에 Data Class를 적용 할 수 없는 이유. Entity Class를 Da..

QueryDSL이란? 기존 JPA Criterial는 코드로 JPQL을 작성하므로 문법 오류를 컴파일 단계에서 잡을 수 있고 IDE 자동완성 기느의 도움을 받을 수 있는 등 여러 가지 장점이 있다. 하지만 너무 복잡하고 어렵다. 쿼리를 문자가 아닌 코드로 작성해도 쉽고 간결하며 그 모양도 쿼리와 비슷하게 개발 할 수 있는 프로젝트가 바로 QueryDSL이다. QueryDSL 설정 build.gradle.kts에 아래 설정을 추가해준다. Version은 개발자가 원하는 버전을 선택한다. plugins { kotlin("kapt") version "1.4.32" } dependencies { val querydslVersion = "4.4.0" //== QueryDSL ==// implementation("..

Cache란? 일반적으로 Cache는 자주 사용하는 데이터나 값을 복사해 놓는 임시 저장소를 말한다. 흔히 우리가 사용하는 폰-노이만 구조의 PC에서 cache는 CPU 내부에 있는 수 KB, MB 내외의 작은 저장 공간이 Cache이다. (Register, L1/L2 Cache, RAM 등) Cache는 저장 공간이 작고 비용이 비싼 대신 빠른 성능을 제공한다. Cache의 장점 다양한 장점이 있지만 가장 큰 장점은 빠르다는 것이다. 예를 들어 집에서 삼겹살을 먹으려고 할 때, 상추를 텃밭에서 뜯어오는 것과 마트에 가서 사 오는 것 중 어느 것이 빠르겠는가? → 당연히 텃밭에서 뜯어오는게 빠르다. CPU가 연산을 하기 위해서는 연산에 필요한 값들이 필요하다. 그렇다면 이 값들을 어딘가로부터 불러와야 하..

인프런에서 김영한 님의 강의를 들으면서 “JPA의 Entity객체에는 기본 생성자가 있어야 한다”라는 말을 들은 적이 있다. 왜 그런건지 알아보자. java Reflection 위의 이유를 알기 위해서는 먼저 java Reflection를 알아야 한다. java Reflection이란? '구체적인 클래스 타입을 알지 못해도, 그 클래스의 메서드, 타입 변수들에 접근할 수 있도록 해주는 API'이다. 예를 들면 public class Music { private String singer; private String title; public Music(String singer, String title) { this.singer = singer; this.title = title; } public Music(..

Spring Data JPA란? Spring JPA를 잘 모르겠다면 아래 글을 읽어 보자 https://yebali.tistory.com/28?category=973996 Spring Data JPA란? 일단 JPA란? Spring Data JPA를 알기 전 우선 JPA에 대해 알아야 한다. JPA란 Java Persistentce API의 약자로 JAVA에서 관계형 DB를 사용하는 방식을 정의한 '인터페이스'이다. 말 그대로 인터페이스이기 때문에 yebali.tistory.com 예시 Entity public class Member extends BaseEntity { @Id @GeneratedValue @Column(name = "member_id") private Long id; private St..