반응형 PROJECT5 JPA @Entity 엔티티 클래스 애노테이션 : 데이터베이스에 저장(persist)할 자바 객체를 정의 -다양한 애노테이션을 이용해 보다 자세한 테이블 스키마 정보를 표현 -애노테이션으로 표현한 스키마 정보와 실제 테이블 스키마가 완벽히 일치해야 할 필요는 없음 -하나의 도메인(domain)으로 간주 2022. 11. 16. Hibernate VS Spring Data JPA 하이버네이트 , 스프링 JPA --> 둘 다 Spring Data JPA 를 사용하면서 볼 수 있는 단어들 정확히 무슨 차이인지 알아보자 Hibernate "MORE THAN AN ORM, DISCOVER THE HIBERNATE GALAXY" -자바생태계를 대표하는 ORM framework - 스프링 부트에서 채택한 메인 ORM framework - JPA 표준 스펙을 구현한 JPA Provider - 고성능, 확장성, 안정성을 표방 - 다양한 하위 제품들로 나뉨 -- Hibernate ORM(최신:5.5, 스프링 부트:5.4.32) -- Hibernate Validator -- Hibernate Reactive Hibernate Query Language 하이버네이트가 사용하는 SQL 스타일 비표준 .. 2022. 11. 15. iBATIS, MyBatis, JdbcTemplate SQL Mapper RDBMS 쿼리문의 실행 결과를 자바 코드에 매핑하는 프레임워크 - JDBC API 를 사용 - persistence framwork - 프로그램 코드와 SQL 을 분리 iBATIS MyBatis JDBC API(Spring JDBC) 스프링에서 제공하는 jdbc 기반 persistence framework - spring-boot-starter-jdbc(spring-boot-starter-data-jdbc 랑 다름) -JdbcTemplate: Spring JDBC 에서 제공하는 템플릿 클래스, 쿼리 실행과 결과 전달 기능을 제공 2022. 11. 15. ORM, JPA, JPQL ORM : Object Relational Mapping 객체 지향 언어를 이용하여 서로 호환되지 않는 타입 간의 데이터를 변화하는 기술 - 좁은 의미 : DB(RDBMS) 테이블 데이터를 (자바) 객체와 매핑하는 기술 - 효과 : RDBMS를 객체 지향 DB로 가상화 하는 것 - ORM 으로 업고자 하는 것 1. DB의 추상화 : 특정 디비에 종속된 표현(예:sql)이나 구현이 사라지고, 디비 변경에 좀 더 유연해짐 2. 객체의 이점을 활용: 객체간 참조, type-safety 3. 관심사 분리 : DB 동작에 관한 코드 작성의 반복을 최소화하고 비즈니스 로직에 집중 JPA : Jakarta(Java) Persistence API 자바에서 ORM 기술을 사용해 RDBMS를 다루기 위한 인터페이스 표준 .. 2022. 11. 11. 이전 1 2 다음 반응형