Spring Data: 76개의 글
| 엔티티 상태 JPA에서는 엔티티의 상태를 다음과 같이 나눈 후 사용자가 요청한 사항에 맞추어 관리하게 됩니다. Transient : JPA가 엔티티를 나타내는 객체에 대한 정보를 모르는 상태 Persistent : JPA가 엔티티를 관리 중인 상태 Detached : JPA가 더이상 엔티티를 관리하지 않는 상태 Removed : JPA가 엔티티를 관리하는 상태에서 이 엔티티를 삭제하기로한 상태 | JPA에서 제공하는 엔티티 기능 : 1차 캐시, Dirty Checking, Write Behind 1차 캐시 : JPA에서 DB로 엔티티를 영속화 했을 때, 다시 그 엔티티를 받아올 때는 상태가 변경되지 않았을 시, 메모리에 캐시된 엔티티 정보를 받아옵니다. Dirty Checking : 엔티티의 변경 사..
| @ManyToOne 프로젝트 구조 ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ └── tutorial │ │ │ └── springbootjpa │ │ │ ├── Account.java │ │ │ ├── Address.java │ │ │ ├── JpaRunner.java │ │ │ ├── SpringBootJpaApplication.java │ │ │ └── Study.java │ │ └── resources │ │ ├── application.properties │ │ ├── static │ │ └── templates 의존성 관리 org.springframework.boot spring-boot-starter-data-jpa org.springfra..
| Entity 매핑 및 Value 타입 매핑 프로젝트 구조 ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ └── tutorial │ │ │ └── springbootjpa │ │ │ ├── Account.java │ │ │ ├── Address.java │ │ │ ├── JpaRunner.java │ │ │ └── SpringBootJpaApplication.java │ │ └── resources │ │ ├── application.properties │ │ ├── static │ │ └── templates 의존성 관리 org.springframework.boot spring-boot-starter-data-jpa org.springframework.b..
| @Entity 엔티티는 자바에서 객체지향적인 코드를 작성할 때 네이밍된 DB와 대응되는 클래스의 이름입니다. 보통 클래스와 같은 이름을 사용하기 때문에 값을 변경하지 않습니다. 값을 변경할 때는 @Entity(name = "myAccount") 같은 형식의 어노테이션을 붙여서 변경할 수 있습니다. 엔티티 이름이 DB안에 있는 Table명과 바로 대응되는 것은 아니지만 @Table 어노테이션을 통해서 특별한 정보를 추가하지 않을 경우 엔티티 이름이 바로 DB안에 있는 Table명과 대응됩니다. | @Table 테이블은 RDBMS 안의 릴레이션 스키마에 대응되는 이름을 나타냅니다. @Table(name = "myAccount") 같은 형식의 어노테이션을 붙여서 엔티티와 대응되는 테이블명을 명시할 수 있습..
JPA(Java Persistent API) JPA(Java Persistent API)는 자바의 영속성 관리와 ORM을 위한 표준 기술입니다. 기존 EJB ORM이던 Entity Bean을 JPA라 바꿔 체계화한 기술이죠. ORM(Object Relational Mapping)이란 RDB 테이블을 객체지향적으로 사용하기 위한 기술입니다. 객체와 RDB의 테이블을 매핑하여 자바 프로그램 코드상에서 RDB를 객체지향적으로 쓸 수 있게 고려한 기술이라고 생각하면 될 것입니다. 이 JPA를 Spring에서 쉽게 쓸 수 있도록 한 것이 Spring Data JPA입니다. 장점 객체 지향적으로 데이터를 관리하기 때문에 비즈니스 로직에 집중할 수 있으며, 객체지향 개발이 가능 여러 RDBMS 벤더마다 다른 쿼리문을..
참조문서 : https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html 1. RestTemplate이란? spring 3.0 부터 지원한다. 스프링에서 제공하는 http 통신에 유용하게 쓸 수 있는 템플릿이며, HTTP 서버와의 통신을 단순화하고 RESTful 원칙을 지킨다. jdbcTemplate 처럼 RestTemplate 도 기계적이고 반복적인 코드들을 깔끔하게 정리해준다. 요청보내고 요청받는데 몇줄 안될 정도.. 특징 기계적이고 반복적인 코드를 최대한 줄여줌 RESTful형식에 맞춤 json, xml 를 쉽게 응답받음 2. HTTP 서버와의 다양한 통신방..