일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ddd
- 최범균
- 30기
- reactive operaton
- rabbitmq-delayed-message-exchange
- jdbc
- 이펙티브자바
- 객체지향 쿼리 언어
- 자동처리
- kusitms
- RESTClient
- cicd
- 영속성
- Spring
- GitHub Actions
- 큐시즘
- 자바 ORM 표준 JPA 프로그래밍
- springboot
- Spring Batch
- java
- JPQL
- 교육기획팀
- JPA
- scheduling messages with rabbitmq
- 밋업프로젝트
- 도메인 주도 개발 시작하기
- 한국대학생it경영학회
- 교육기획팀원
- delayed message plugin
- Domain Driven Design
- Today
- Total
목록분류 전체보기 (69)
코딩은 마라톤

최근 프로그래머스를 풀던 중 모르는 메서드가 있었다,, (https://school.programmers.co.kr/learn/courses/30/lessons/42576) for (String c : completion) { hashMap.put(c, hashMap.getOrDefault(c, 0) + 1); } 바로 "getOrDefault()" 메서드이다. getOrDefault(Object key, V defaultValue) 자바 공식 문서에서는 위와 같이 설명하고 있다. 아래 코드는 Map 인터페이스에 구현된 default 코드이다. default V getOrDefault(Object key, V defaultValue) { V v; return (((v = get(key)) != null)..
해시 현대 사회에서 데이터를 저장하거나 탐색할 때 가장 쉽게 떠올릴 수 있는 방법은 "순차 탐색" 이다. 가장 확실하게 찾을 수 있지만 최악의 경우 탐색할 때마다 모든 데이터를 살펴봐야하기 때문에 효율적이진 않다. 이 방법을 개선하기 위해 찾아야 할 값이 어디에 있는지 알아낼 방법이 필요하다. 즉, 어떠한 값이 저장되는 위치를 어떤 규칙으로 정할 수 있으면 탐색 필요 없이 바로 데이터를 찾을 수 있다. 이러한 자료구조를 "해시(Hash)"라고 한다. 해시의 개념 해시는 해시 함수를 사용해서 변환한 값을 인덱스로 삼아 키와 값을 저장해서 빠른 데이터 탐색을 제공하는 자료구조이다. 키를 활용해 데이터 탐색을 빠르게 할 수 있다. 해시의 특징 1. 해시는 단방향으로 동작한다. 키를 통해 값을 찾을 수 있지만 ..

이전 게시물에서도 작성했지만 나는 4월 5일 회사 면접을 보았다.면접 중에 면접관님께서 물으셨다.면접관님 : request dto에서 @Getter를 쓴 이유가 뭐예요? 프론트에서 request 요청을 서버에서 어떻게 받는지 과정을 알아요?나 : 음.. Entity 클래스에서 request를 가지고 Entity 객체를 생성하는데 이때 request dto의 필드는 private로 되어있기 때문에 @Getter를 통해 가져오려고 하였습니다 !면접관님 : 프론트에서 request 요청을 서버에서 어떻게 받는지, @Getter는 왜 사용하는지 공부해보면 좋을 거 같아요.이렇게 면접관님께서 학습할 부분을 알려주셔서 dto에서 왜 @Getter를 사용하는지, 프론트에서 주는 요청을 어떻게 서버에서 받는지 찾아 ..

근황https://developer-anxi.tistory.com/27 [계획] 2024.03 ~ 2024.061. 자바 ORM 표준 JPA 프로그래밍 책 끝내기. - 방학 동안 끝내려고 했으나 ... 방학 때 다른 길에 빠져 공부에 소홀했다. 그래서 1학기 종강 전까지 책을 끝낼 예정이다 !!! 2. 코딩테스트 합격자 되기developer-anxi.tistory.com 이글 쓴지 거의 한달이 다 되어가네요,,매주 3개 이상 블로그 글 작성을 다짐했는데 이뤄지지 않았습니다,, 변명을 하자면 저는 현재 동아리에서 팀 프로젝트와 개인 프로젝트를 진행하고 있습니다.근데 팀 프로젝트에서 이슈가 하나 생겨서 그걸 해결하려다 시간이 벌써 이렇게 되버렸네요,,차차 이 내용은 블로그에 정리해서 기록하도록 하겠습니다.C..
임베디드 타입(복합 값 타입) 새로운 값 타입을 직접 정의해서 사용할 수 있다. 이를 임베디드 타입이라 한다. @Entity public class Member { ... // 집 주소 표현 private String city; private String street; private String zipcode; ... } 위 코드에서 회원 엔티티의 집 주소를 나타낼 때, 모든 정보를 풀어서 저장한다. 이는 객체지향적이지 않으며 응집력만 떨어뜨린다. 따라서 풀어쓰지 않고 [집주소]를 가지도록 임베디드 타입을 사용한다. @Entity public class Member { @Embedded Address homeAddress; // 집 주소 ... } @Embeddable public class Addres..

1. 자바 ORM 표준 JPA 프로그래밍 책 끝내기. - 방학 동안 끝내려고 했으나 ... 방학 때 다른 길에 빠져 공부에 소홀했다. 그래서 1학기 종강 전까지 책을 끝낼 예정이다 !!! 2. 코딩테스트 합격자 되기 _ 자바편 끝내기. - 알고리즘을 자주 풀려고 노력했지만 입맛에 맞는 것만 풀려고 하거나, 조금 고민하다가 남의 코드를 찾아보는게 습관이 되어가는 거 같아서.. 철저하게 공부하고 풀어지지 않으려고 이 책을 구매했다. - 주에 10문제씩 푼다면 8주면 끝낼 수 있다. 물론 방학 전까지 못 끝낼 수 있으나, 못 끝내더라도 최대한 많이 습득해서 코딩테스트에 감이 좀 생겼으면 좋겠다. - 아마 이 책은 끝내더라도 2학기에 한번 더 반복해서 완벽히 내 것으로 만들 것이다. 그래서 3학년 끝나고 산업체..
8.1 프록시 엔티티를 조회할 때 연관된 엔티티들이 항상 사용되는 것은 아니다. 회원 : 팀 = N : 1 회원과 팀의 정보를 출력할 때는 회원과 연관된 팀의 이름을 출력하기 때문에 둘 다 사용한다. 하지만 회원의 정보만을 출력할 때는 연관된 팀 엔티티는 전혀 사용하지 않는다. (함께 조회하는 것은 비효율적이다.) 따라서 JPA는 이런 문제를 해결하고자 엔티티가 실제 사용될 때까지 데이터베이스 조회를 지연하는 방법을 제공한다. 이것을 "지연 로딩" 이라 한다. 지연 로딩 기능을 사용하려면 실제 엔티티 객체 대신에 데이터베이스 조회를 지연할 수 있는 가짜 객체가 필요한데 이를 "프록시 객체" 라 한다. 8.1.1 프록시 기초 Member member = em.find(Member.class, "member..

7.1 상속 관계 매핑 7.1.1 조인 전략 _ 각각의 테이블로 변환 엔티티 각각을 모두 테이블로 만들고 자식 테이블이 부모 테이블의 기본 키를 받아서 기본 키 + 외래 키로 사용하는 전략 조회할 때 조인을 자주 사용한다. 타입을 구분하는 컬럼을 추가해야한다. (객체는 타입으로 구분할 수 있지만 테이블은 타입의 개념이 없기 때문) // 부모 클래스 @Entity // 부모 클래스에 @Inheritance를 사용한다. // 조인 전략을 사용하므로 InheritanceType.JOINED를 사용한다. @Inheritance(strategy = InheritanceType.JOINED) // 부모 클래스에 구분 컬럼을 지정한다. // 이 컬럼(DTYPE)을 통해 저장된 자식 테이블을 구분할 수 있다. @Dis..