분류 전체보기

자바 ORM 표준 JPA 프로그래밍

[자바 ORM 표준 JPA 프로그래밍] 10.4 - QueryDSL

자바 ORM 표준 JPA 프로그래밍 | 김영한 - 교보문고 자바 ORM 표준 JPA 프로그래밍 | 자바 ORM 표준 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결해준다. 이 책은 JPA product.kyobobook.co.kr QueryDSL은 쿼리를 문자가 아닌 코드로 작성하여 쉽고 간결하며 그 모양도 쿼리와 비슷하게 개발할 수 있는 프로젝트이다. 코드로 JPQL을 작성하므로 문법 오류를 컴파일 단계에서 잡을 수 있고 IDE 자동완성 기능의 도움을 받을 수 있다 2. 시작 라이브러리 추가와 쿼리용 클래스 생성 com.mysema.query.jpa.impl.JPAQuery 객체를 생성해야 하며, 사용할 쿼리 타입(Q)을..

자바 ORM 표준 JPA 프로그래밍

[자바 ORM 표준 JPA 프로그래밍] 10.2 - JPQL

자바 ORM 표준 JPA 프로그래밍 | 김영한 - 교보문고 자바 ORM 표준 JPA 프로그래밍 | 자바 ORM 표준 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결해준다. 이 책은 JPA product.kyobobook.co.kr 1. 기본 문법과 쿼리 API SELECT 문 SELECT m FROM Member AS m where m.username = 'Hello' 대소문자 구분 엔티티와 속성은 대소문자를 구분한다. Member와 username은 대소문자를 구분 SELECT, FROM, AS 같은 JPQL 키워드는 대소문자를 구분하지 않는다. 엔티티 이름 JPQL에서 사용한 Member는 클래스명이 아니라 엔티티명이다..

자바 ORM 표준 JPA 프로그래밍

[자바 ORM 표준 JPA 프로그래밍] 9장 - 값 타입

자바 ORM 표준 JPA 프로그래밍 | 김영한 - 교보문고 자바 ORM 표준 JPA 프로그래밍 | 자바 ORM 표준 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결해준다. 이 책은 JPA product.kyobobook.co.kr JPA의 데이터 타입은 엔티티 타입과 값 타입으로 나눌 수 있다. 엔티티 타입 : @Entity 로 정의하는 객체, 식별자를 통해 추적 가능 값 타입 ; 단순히 값으로 사용하는 자바 기본 타입, 추적 불가능 값 타입의 종류 기본값 타입 - 자바가 제공하는 기본 데이터 타입 자바 기본 타입 래퍼클래스 String 임베디드 타입 - 사용자가 직접 정의한 값 타입 컬렉션 값 타입 - 하나 이상의 값 타..

자바 ORM 표준 JPA 프로그래밍

[자바 ORM 표준 JPA 프로그래밍] 8장 - 프록시와 연관관계 관리

자바 ORM 표준 JPA 프로그래밍 | 김영한 - 교보문고 자바 ORM 표준 JPA 프로그래밍 | 자바 ORM 표준 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결해준다. 이 책은 JPA product.kyobobook.co.kr 1. 프록시 엔티티를 조회할 때 연관된 엔티티를 항상 사용하는 것이 아니기 때문에, JPA는 엔티티가 실제 사용될 때까지 데이터베이스 조회를 지연시키는데 이것을 지연 로딩이라고 한다, 지연 로딩 기능을 사용하려면 실제 엔티티 객체 대신에 데이터베이스 조회를 지연할 수 있는 가짜 객체가 필요한데 이것을 프록시 객체라고 한다. 1.1 프록시 기초 엔티티를 조회할 때 em.find() 메소드 사용 엔티..

자바 ORM 표준 JPA 프로그래밍

[자바 ORM 표준 JPA 프로그래밍] 7장 - 고급 매핑

자바 ORM 표준 JPA 프로그래밍 | 김영한 - 교보문고 자바 ORM 표준 JPA 프로그래밍 | 자바 ORM 표준 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결해준다. 이 책은 JPA product.kyobobook.co.kr 1. 상속 관계 매핑 관계형 데이터베이스에는 객체지향 언어에서 다루는 상속이라는 개념이 없고, 대신 상속과 유사한 슈퍼타입 서브타입 관계라는 모델링 기법이 있다. 상속 관계 매핑은 객체의 상속구조와 데이터베이스의 슈퍼타입 서브타입 관계를 매핑하는 것 🤗 슈퍼타입 서브타입 논리 모델을 테이블로 구현하는 방법 조인 전략 : 각각을 모두 테이블로 만들고 조회할 때 조인 사용 단일 테이블 전략 : 테이블..

알고리즘/탐색

[백준] 14503 로봇 청소기 (DFS) - Java

14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 문제 상황 로봇 청소기와 방의 상태가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 방은 $N \times M$ 크기의 직사각형으로 나타낼 수 있으며, $1 \times 1$ 크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북 중 하나이다. 방의 각 칸은 좌표 $(r, c)$로 나타낼 수 ..

알고리즘/자료구조

[백준] 1874 스택 수열 (스택) - Java

1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 문제 상황 스택 (stack)은 기본적인 자료구조 중 하나로, 컴퓨터 프로그램을 작성할 때 자주 이용되는 개념이다. 스택은 자료를 넣는 (push) 입구와 자료를 뽑는 (pop) 입구가 같아 제일 나중에 들어간 자료가 제일 먼저 나오는 (LIFO, Last in First out) 특성을 가지고 있다. 1부터 n까지의 수를 스택에 넣었다가 뽑아 늘어놓음으로써, 하나의 수열을 만들 ..

Java

[Java] 가비지 컬렉션(Garbage Collection)

가비지 컬렉션(Garbage Collection)이란? 자바의 메모리 관리 방법 JVM의 Heap 영역에서 동적으로 할당했던 메모리 영역 중 필요 없게 된 메모리 영역을 주기적으로 삭제하는 프로세스 C언어는 free()라는 함수를 통해 직접 메모리를 해제해주어야 하지만 자바는 JVM의 가비지 컬렉터가 불필요한 메모리를 알아서 정리해준다. 장점 메모리 누수 방지 해제된 메모리에 접근 방지 해제한 메모리를 또 해제하는 이중 해제 방지 단점 개발자가 메모리가 언제 해제되는지 정확하게 알 수 없다. 가비지 컬렉션(GC)이 동작하는 동안에는 다른 동작을 멈추기 때문에 오버헤드가 발생한다. Stop-The-World(STW) : GC를 수행하기 위해 JVM이 프로그램 실행을 멈추는 현상 이로 인해 GC가 너무 자주..

자바 ORM 표준 JPA 프로그래밍

[자바 ORM 표준 JPA 프로그래밍] 6장 - 다양한 연관관계 매핑

자바 ORM 표준 JPA 프로그래밍 | 김영한 - 교보문고 자바 ORM 표준 JPA 프로그래밍 | 자바 ORM 표준 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결해준다. 이 책은 JPA product.kyobobook.co.kr 6장 - 다양한 연관관계 매핑 엔티티의 연관관계를 매핑할 때 고려해야 할 것 : 다중성, 방향, 연관관계의 주인 가능한 모든 연관관계 다대일 : 단방향, 양방향 일대다 : 단방향, 양방향 일대일 : 주 테이블 단방향, 양방향 일대일 : 대상 테이블 단방향, 양방향 다대다 : 단방향, 양방향 1. 다대일 다대일 관계와 일대다 관계는 항상 반대 방향 외래키는 항상 다 쪽에 있고, 따라서 객체 양방향 ..

알고리즘/자료구조

[백준] 11003 최솟값 찾기 (슬라이딩 윈도우, 덱) - Java

11003번: 최솟값 찾기 N개의 수 A1, A2, ..., AN과 L이 주어진다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력하는 프로그램을 작성하시오. 이때, i ≤ 0 인 Ai는 무시하고 D를 구해야 한다. www.acmicpc.net 문제 상황 접근법 일정한 범위 안에서 최솟값 찾기 슬라이딩 윈도우와 정렬을 사용해야함 일반적인 정렬을 사용하면 시간초과가 나기 때문에 슬라이딩 윈도우를 덱으로 구현하면 정렬 효과를 볼 수 있음 덱에 새 값이 저장될 때 덱의 가장 뒤의 값이 저장하려는 값보다 크면 제거함 제거가 끝난 후 최솟값을 출력 문제 풀이 import java.io.BufferedReader; import java.io.IOException; import jav..

jny0
'분류 전체보기' 카테고리의 글 목록 (6 Page)