일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 방화벽
- 라우터
- STREAM
- JPA
- Jenkins
- Linux
- container
- docker
- Spring
- Java
- gradle
- map
- tomcat
- Collection
- mybatis
- sonarQube
- LAN어댑터
- jdk
- Set
- IntelliJ
- post
- ansible
- cloud
- 캐시서버
- Pipeline
- AOP
- 소켓
- 허브
- DevOps
- 액세스회선
- Today
- Total
목록JPA (3)
거북이-https://velog.io/@violet_evgadn 이전완료
EntityManger 생성 방법 먼저 이론적인 방법을 설명하겠다. 이론적인 방법을 설명하는 이유는 Spring Boot 사용 여부에 따라 EntityManager 사용 방법이 완전히 다르기 때문이다. 지금 설명하는 방법은 Spring Boot를 사용하지 않을 경우 EntityManger를 생성하는 방법인데 Spring Boot를 활용하더라도 이런 개념이 바뀌는 것은 아니고 단순히 Spring Boot가 중간 과정을 담당해주기 때문에 더욱 편리하게 설정 및 EntityManager를 생성할 수 있게 되는 것이다. JPA도 큰 의미로 보자면 MyBatis의 동작 방식과 유사하다. MyBatis는 SqlSessionFactory라는 것이 Query가 필요할 때마다 SqlSession을 생성하여 Query를 ..
Entity 상태 ◎ 비영속(new/transient) 영속성 컨텍스트와 전화 관계 없는 객체 상태를 의미한다 영속성 컨텍스트가 JPA에서 DB와 통신하는 중간 다리 역할을 하기 때문에 결국 객체가 영속 컨텍스트에 의해 관리를 받고 있어야만 DB와 통신하며 데이터에 대한 처리가 가능해지는 것이다. 그렇다면 영속성 컨텍스트와 아예 관련이 없는 비영속 상태의 객체는 어떤 의미를 지닐까? 그냥 "순수한 객체 상태", 즉 DB와 연동할 수 없는 단순한 POJO 객체에 불과하다. 이런 비영속 상태의 객체를 persist() 명령을 통해 영속성 컨텍스트에 등록시켜 관리 상태로 바꿔줘야지만 객체를 통해 DBD 데이터를 처리할 수 있게 되는 것이다. ◎ 영속(managed) 영속성 컨텍스트에 저장된 Entity 상태를..
JPA 등장 배경 ORM의 시초는 "EJB"이다. EJB는 Eneterprise Java Bean의 약자로써 기업환경의 시스템을 구현하기 위한 Server 측 Componenet Model이다. EJB에서는 DB 연동이 필요하지 않은 Session Bean과 DB의 데이터를 관리하는 Entity Bean이 존재한다. DB 관련 쿼리는 Entity Bean에서 자동으로 처리하여 개발자는 로직에 더욱 집중하며 코드를 짤 수 있게 되는 것이다. 일반적으로 Client가 Session Bean을 부르고, Session Bean이 Entity Bean을 호출하여 DB에 접근한다. 하지만 EJB는 코드가 지저분하고 Interface를 많이 구현해야 해서 복잡성이 높으며 속도가 느리다는 단점이 존재했다. 이런 문제를..