Spring5 Hibernate docs - 2. 도메인 모델 2. 도메인 모델 The term domain model comes from the realm of data modeling. It is the model that ultimately describes the problem domain you are working in. Sometimes you will also hear the term persistent classes. 도메인 모델이라는 용어는 데이터 모델링 영역으로부터 유래한다. 이것은 궁극적으로 작업 중인 문제 도메인을 설명하는 역할을 한다. 때때로 persistent classes 영구적인 클래스라는 용어를 듣기도 한다. realm 영역 problem domain? 문제도메인 문제 도메인은 해당 문제의 영향을 받거나 해당 문제에 대한 솔루션의 영.. Spring/Spring Data JPA 2023. 3. 18. spring transaction [TOC] 문제점들 애플리케이션 구조 역할에 따라 3가지 계층으로 나눔 @Controller : UI 관련 처리 프레젠테이션 계층 웹 요청과 응답 사용자 요청을 검증 주 사용 기술 : 서블릿과 HTTP 같은 웹 기술, 스프링 MVC @Service 비즈니스 로직 가급적 특정 기술에 의존 x 순수 자바 코드로 작성 @Repository 데이터 접근 계층` 주 사용 기술.. jDBC JPA Redis Mongo... 순수한 서비스 계층 핵심 비즈니스 로직이 들어가있음 비즈니스 로직은 최대한 변경 없이 유지되어야 한다.. 서비스 계층은 특정 기술에 종속적이지 않게 개발해야 함 프레젠테이션 계층은 UI와 관련된 웹, 서블릿, HTTP와 관련된 부분을 담당해줌 서비스 계층을 이런 UI와 관련된 기술로부터 보호해줌.. Spring/Spring Data 2023. 3. 6. 트랜잭션 트랜잭션 - 개념 이해 데이터를 DB에 저장하는 이유? DB는 트랜잭션을 지원 하나의 거래를 안전하게 처리하도록 보장해주는 것 e. g 5000원 계좌 이해 A의 잔고를 5000원 감소 B의 잔고를 5000원 증가 2가지 가업이 합쳐져서 하나의 작업처럼 동작해야 함 1번은 성공했는데 2번은 실패한다? 심각... 커밋(commit) : 모든 작업이 성공해서 데이터베이스에 정상 반영하는 것 롤백(rollback) : 작업 중 하나라도 실패해서 거래 이전으로 되돌리는 것 ACID 원자성 트랜잭션 내에서 실행한 작업들은 모두 성공 하거나 모두 실패해야 함 일관성 모든 트랜잭션은 일관성 있는 데이터베이스 상태를 유지해야 함 격리성 동시에 실행되는 트랜잭션들이 서로에게 영향을 미치지 않도록 격리 트랜잭션 간에 격리.. Spring/Spring Data 2023. 3. 6. 커넥션 풀 DataSource 커넥션을 획득하는 다양한 방법 애플리케이션 로직 DriverManager를 통해서 만드냐.. 풀에서 가져오냐.. DriverManager JDBC 개발한것처럼.. 신규 커넥션 생성 생성할 때마다 가져옴 커넥션 풀로 변경 시? 애플리케이션 로직에서 코드를 바꿔야 함 커넥션을 획득하는 방법을 추상화 javax.sql.DataSource 커넥션을 획득하는 방법을 추상화 하는 인터페이스 핵심 기능 : 커넥션 조회 하나 public interface DataSource { Connection getConnection() throws SQLException; } 정리 대부분의 커넧ㄴ 풀은 DataSource 인터페이스를 이미 구현해둠 코드에 직접 의존 x DataSource 인터페이스에만 의존하.. Spring/Spring Data 2023. 3. 6. Hibernate docs - 1. 아키텍처 1. 아키텍처 1. 개요 Hibernate, as an ORM solution, effectively "sits between" the Java application data access layer and the Relational Database, as can be seen in the diagram above ORM 솔루션인 하이버네이트는 자바 어플리케이션 데이터 액세스 계층과 관계형 데이터베이스 사이에 효과적으로 위치한다. The Java application makes use of the Hibernate APIs to load, store, query, etc. its domain data. 자바 어플리케이션은 Hibernate API를 사용하여 도메인 데이터를 로드, 저장, 쿼리 등을 수행한다.. Spring/Spring Data JPA 2022. 11. 24. 이전 1 다음