BackEnd
엔티티 매핑
객체와 테이블 매핑 객체와 테이블을 매핑하는 방법에 대해서 다룹니다. 더보기 @Entity @Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다. JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 주의! 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자) final 클래스, enum, interface, inner 클래스 사용X 저장할 필드에 final 사용 X @Entity 속성 정리 속성 : name JPA에서 사용할 엔티티 이름을 지정한다. 기본값: 클래스 이름을 그대로 사용(예: Member) 같은 클래스 이름이 없으면 가급적 기본값을 사용한다. @Table @Table은 엔티티와 매핑할 테이블 지정 속성 기능 기본값 name 매핑할 테이블 이름 엔티..
준영속 상태 (Detached)
준영속 상태란? 영속 - > 준영속 영속 상태의 엔티티가 영속성 컨텍스트에서 분리(detached) 영속성 컨텍스트가 제공하는 기능을 사용 못함. 준영속 상태로 만드는 방법 em.detach(entity) 특정 엔티티만 준영속 상태로 전환 em.clear() 영속성 컨텍스트를 완전히 초기화 em.close() 영속성 컨텍스트를 종료 Member member = em.find(Member.class, 150L); member.setName("AAAA"); em.detach(member); System.out.println("===================="); tx.commit();
플러시 (Flush)
플러시란? 영속성 컨텍스트의 변경내용을 데이터베이스에 반영 플러시가 발생하는 경우 변경 감지 수정된 엔티티 쓰기 지연 SQL 저장소에 등록 쓰기 지연 SQL 저장소의 쿼리를 데이터베이스에 전송 (등록, 수정, 삭제 쿼리) 영속성 컨텍스트를 플러시하는 방법 em.flush() - 직접 호출 트랜잭션 커밋 - 플러시 자동 호출 JPQL 쿼리 실행 - 플러시 자동 호출 JPQL 쿼리 실행시 플러시가 자동으로 호출되는 이유 em.persist(memberA); em.persist(memberB); em.persist(memberC); // tx.commit or em.flush()전까지는 DB에 안날라감 // 중간에 JPQL 실행 // JPQL 실행시 persist해놓은 객체들이 DB에 반영되지 않으면 // 아..
스프링 시큐리티 공부할때 순서
1. 웹 보안에 대한 기본적인 개념을 공부한다. 2. 스프링 공홈 시큐리티 편을 자세하게 탐독 한다. 3. 밸덩을 찾는다. 4. 유튜브 강의를 찾는다. 5. 선임을 찾는다. 6. 책을 찾는다. 7. 언어를 바꾼다 https://okky.kr/articles/924044 OKKY - Spring Security 어떻게 공부하시나여 Spring Security 공부중인데 블로그만 찾아서 보려니 쉽지않아서요전체적인 내용이 이어지지 않아서 불편하네요 책도 좋고 인강도 좋은데 인강은 너무 비싸더라고요.. 어떻게 공부하셧나요 알고 okky.kr https://fascination-euna.tistory.com/entry/%EC%9B%B9%EB%B3%B4%EC%95%88-%EC%9B%B9-%EA%B8%B0%EC%B4..
springboot의 특징 5가지 임시저장
https://dzone.com/articles/top-5-spring-boot-features-java-developers-should Top 5 Spring Boot Features Java Developers Should Know - DZone We look at the top Spring Boot features that every Java developer should use, including auto-configuration, starter dependencies, Spring Boot CLI, and more. dzone.com https://sas-study.tistory.com/m/299 [번역글]Java 개발자가 알아야 할 Spring Boot 특징 5가지 서론 당신은 스프링부트에 대..
영속성 컨텍스트 (persistence Context)
JPA에서 가장 중요한 2가지 객체와 관계형 데이터베이스 매핑하기 ( Object Relational Mapping) 영속성 컨텍스트 엔티티 매니저 팩토리와 엔티티 매니저 영속성 컨텍스트 JPA를 이해하는데 가장 중요한 용어 "엔티티를영구 저장하는 환경"이라는 뜻 EntityManager.persist(entity); 영속성 컨텍스트는 논리적인 개념 눈에 보이지 않는다. 엔티티 매니저를 통해서 영속성 컨텍스트에 접근 엔티티의 생명주기 비영속(new/transient) 영속성 컨텍스트와 전혀 관계가 없는 새로운 형태 영속 (managed) 영속성 컨텍스트에 관리되는 상태 준영속 (detached) 영속성 컨텍스트에 저장되었다가 분리된 상태 삭제 (removed) 삭제된 상태 엔티티 생명주기 code // ..