김영한 03 View 환경설정 해당 코드를 작성하여 localhost:9090에 다음과 같은 정적페이지(welcome Page)를 띄운다. hello-spring/src/main/resources/static/index.html 스프링 부트가 제공하는 Welcome Page 기능 스프링 부트는 다음과 같은 4개의 Template Engine을 제공한다. FreeMarker Groovy Thymeleaf Mustache 이... Spring김영한Spring 자바 ORM 표준 JPA 프로그래밍 - 기본편 #2 JPA 시작하기 JPA를 학습하기 위한 객체를 테이블에서 등록/수정/삭제/조회 하는 프로젝트 생성, JPQL에 대해서 알아본다. H2 Database의 특징은 아래와 같다. 프로젝트 구조는 아래와 같다. persistence 설정은 아래와 같다. 주요 설정 부분은 아래와 같다. 5 줄 : 영속성 유닛을 등록한다. 영속성 유닛(Persistence Unit) 엔티티 매니저 설정부터 살펴보자. 엔티티 매니저란 ... ORMInflearnJPA김영한Inflearn 영속성 전이와 고아 객체 특정 엔티티를 영속 상태로 만들 때 연관된 엔티티도 함께 영속상태로 만들도 싶을 때 사용한다 예) 부모 엔티티를 저장할 때 자식 엔티티도 함께 저장. @OneToMany(mappedBy="parent", cascade = CascadeType.PERSIST) 영속성 전이를 안해주면 자식의 개수만큼 em.persist(child);를 해야한다. 👉 cascade = CascadeType.ALL... JPA 프로그래밍 - 기본편김영한JPA 프로그래밍 - 기본편 자바 ORM 표준 JPA 프로그래밍 - 기본편 #4 엔티티 매핑 기본 키 매핑 @Entity에 사용할 수 있는 속성으로 name이 있다. DDL 생성 시 유니크 제약조건을 만들고 2개 이상의 복합 유니크 제약조건도 만들 수 있다. 스키마 자동 생성 기능을 사용하면 애플리케이션 실행 시점에 데이터베이스 테이블을 자동으로 생성한다. 하지만 이 기능을 사용하면 Entity만 보고도 다양한 제약조건을 파악할 수 있는 장점이 있다. 데이터베이스 컬럼 정보를 직접 ... ORMInflearnJPA김영한Inflearn 영속성 컨택스트 - 내부 동작 방식 👉 EntityManager 속 영속성 컨택스트 안에 member 객체가 들어가서 영속 상태가 된다. 👉 그럼 DB에서 조회하여 member2 객체를 1차 캐시에 저장한다. em.persist(member); 에서 1차 캐시에 "key=101" : "value=member" 가 저장된다 em.find(Member.class, 101L); 코드가 실행되면 DB에서 조회하기 전에 1차 캐시에서 ... JPA 프로그래밍 - 기본편김영한JPA 프로그래밍 - 기본편 [스프링] 웹 개발 기초 정적 컨텐츠 welcome page처럼 파일을 그대로 웹브라우저에 내려주는거. 1. 정적 컨텐츠 스프링부트는 정적 컨텐츠를 자동으로 제공. 그냥 원하는 html 파일을 static폴더에 넣어주면 볼 수 있다. 그리고 내장 톰캣 서버에서 접속하려는 파일 관련 컨트롤러가 있는지 먼저 찾아본다. 그러고나서 resources 내부에 접속하려는 파일을 찾아보고 있으면 반환해준다. MVC : Model... 웹개발스프링API김영한정적MVCAPI
03 View 환경설정 해당 코드를 작성하여 localhost:9090에 다음과 같은 정적페이지(welcome Page)를 띄운다. hello-spring/src/main/resources/static/index.html 스프링 부트가 제공하는 Welcome Page 기능 스프링 부트는 다음과 같은 4개의 Template Engine을 제공한다. FreeMarker Groovy Thymeleaf Mustache 이... Spring김영한Spring 자바 ORM 표준 JPA 프로그래밍 - 기본편 #2 JPA 시작하기 JPA를 학습하기 위한 객체를 테이블에서 등록/수정/삭제/조회 하는 프로젝트 생성, JPQL에 대해서 알아본다. H2 Database의 특징은 아래와 같다. 프로젝트 구조는 아래와 같다. persistence 설정은 아래와 같다. 주요 설정 부분은 아래와 같다. 5 줄 : 영속성 유닛을 등록한다. 영속성 유닛(Persistence Unit) 엔티티 매니저 설정부터 살펴보자. 엔티티 매니저란 ... ORMInflearnJPA김영한Inflearn 영속성 전이와 고아 객체 특정 엔티티를 영속 상태로 만들 때 연관된 엔티티도 함께 영속상태로 만들도 싶을 때 사용한다 예) 부모 엔티티를 저장할 때 자식 엔티티도 함께 저장. @OneToMany(mappedBy="parent", cascade = CascadeType.PERSIST) 영속성 전이를 안해주면 자식의 개수만큼 em.persist(child);를 해야한다. 👉 cascade = CascadeType.ALL... JPA 프로그래밍 - 기본편김영한JPA 프로그래밍 - 기본편 자바 ORM 표준 JPA 프로그래밍 - 기본편 #4 엔티티 매핑 기본 키 매핑 @Entity에 사용할 수 있는 속성으로 name이 있다. DDL 생성 시 유니크 제약조건을 만들고 2개 이상의 복합 유니크 제약조건도 만들 수 있다. 스키마 자동 생성 기능을 사용하면 애플리케이션 실행 시점에 데이터베이스 테이블을 자동으로 생성한다. 하지만 이 기능을 사용하면 Entity만 보고도 다양한 제약조건을 파악할 수 있는 장점이 있다. 데이터베이스 컬럼 정보를 직접 ... ORMInflearnJPA김영한Inflearn 영속성 컨택스트 - 내부 동작 방식 👉 EntityManager 속 영속성 컨택스트 안에 member 객체가 들어가서 영속 상태가 된다. 👉 그럼 DB에서 조회하여 member2 객체를 1차 캐시에 저장한다. em.persist(member); 에서 1차 캐시에 "key=101" : "value=member" 가 저장된다 em.find(Member.class, 101L); 코드가 실행되면 DB에서 조회하기 전에 1차 캐시에서 ... JPA 프로그래밍 - 기본편김영한JPA 프로그래밍 - 기본편 [스프링] 웹 개발 기초 정적 컨텐츠 welcome page처럼 파일을 그대로 웹브라우저에 내려주는거. 1. 정적 컨텐츠 스프링부트는 정적 컨텐츠를 자동으로 제공. 그냥 원하는 html 파일을 static폴더에 넣어주면 볼 수 있다. 그리고 내장 톰캣 서버에서 접속하려는 파일 관련 컨트롤러가 있는지 먼저 찾아본다. 그러고나서 resources 내부에 접속하려는 파일을 찾아보고 있으면 반환해준다. MVC : Model... 웹개발스프링API김영한정적MVCAPI