본문 바로가기

웹 개발/Spring

(28)
[Spring] Entity 클래스와 JpaRepository JPA를 개발에 사용하기 위해서는 두 가지 코드가 필요하다. JPA를 통해서 관리하게 되는 객체를 위한 엔티티 클래스 엔티티 객체들을 처리하는 기능을 가진 Repository 실습 Entity 클래스 작성 @Getter @ToString @Entity @Table(name = "user") public class User { @Id private @Column(length = 100) String user_id; // 유저 고유번호 @Setter @Column(nullable = false, length = 20) private String user_name; // 유저 닉네임 @CreatedDate @Column(nullable = false) private LocalDateTime write_date..
[Spring] Spring Data JPA JPA(Java Persistence API) JPA 는 Java 언어를 통해서 데이터베이스와 같은 영속 계층을 처리하고자 하는 스펙 ORM을 Java 언어에 맞게 사용하는 스펙 ORM(Object Relational Mapping) 객체지향 패러다임을 관계형 데이터베이스에 보존하는 기술 객체지향 패러다임을 관계형 패러다임으로 매핑해주는 개념 Spring Data JPA와 JPA 스프링 부트는 JPA 구현체 중에서 'Hibernate'라는 구현체를 이용 Hibernate '오픈소스'로 ORM을 지원하는 프레임워크 단독으로 프로젝트에 적용이 가능한 독립된 프레임워크. 스프링부트가 아닌 스프링만을 사용한다고 해도 Hibernate와 연동해서 JPA를 사용할 수 있다. Spring Data JPA는 Hiber..
[Spring] JpaRepository 인터페이스 JpaRepository - JPA는 구현체인 Hibernate를 이용하기 위한 여러 API를 제공하는데, JpaRepository는 이 중 하나로 CRUD, 페이징, 정렬 등의 작업을 별도의 코드 없이 처리할 수 있게 지원하는 인터페이스 - Spring Data JPA에는 인터페이스의 기능을 통해서 JPA 관련 작업을 별도의 코드 없이 처리할 수 있게 지원 JpaRepository 상속 구조 사용 방법 - 일반적인 기능만 사용할 때는 CrudRepository를 사용, 모든 JPA관련 기능을 사용하고 싶을 때는 JpaRepository 사용 - JpaRepository 인터페이스를 상속받고, 엔티티의 클래스명과 @Id 타입을 지정 import org.springframework.data.jpa.repo..
[Spring] ORM과 JPA ORM(Object Relational Mapping) : - 객체지향 패러다임을 관계형 데이터베이스에 보존하는 기술 - '객체지향'의 구조는 '관계형 데이터베이스'와 유사. 1) 관계형 데이터 베이스의 테이블은 컬럼을 정의하고 컬럼에 맞는 데이터 타입을 지정해서 데이터를 보관하는 틀을 만든다. => 클래스 2) 하나의 Row에 데이터를 저장. => 인스턴스 3) 관계(relation) => 참조(reference) - 객체지향을 자동으로 관계형 데이터베이스에 맞게 변환하는 기법을 의미 JPA(Java Persistence API) - ORM을 자바 언어에 맞게 사용하는 '스펙' - 스프링 부트는 JPA의 구현체 중에서 'Hibernate'를 이용