SpringDataJpa [스프링 데이터 JPA] 프로젝트 환경설정 + web도 추가 해줘야 함 아무 코드를 짜지 않고 실행시켰을 땐 이렇게 떠야 성공 나는,, web을 빼먹고 프로젝트를 생성했다가 괜히 삽질을 했다,, 이는 간단한 "hello"만 띄우도록 한 컨트롤러를 만든 후 서버를 재시작한 결과이다. 잘 동작하는 것을 확인함 그리고 이렇게 두 가지 설정해주는 것 잊지말기(두번째 체크박스는 롬복 사용을 위함) H2 데이터베이스 버전은 꼬옥 이걸로 맞춰주기... TILSpringDataJpaSpringDataJpa [Spring Data JPA] 쿼리 메서드 기능 ① 📌 스프링 데이터 JPA가 제공하는 쿼리 메서드 기능 메서드 이름으로 쿼리 생성 메서드 이름으로 JPA NamedQuery 호출 @Query 어노테이션을 사용해서 리포지토리 인터페이스에 쿼리 직접 정의 2. 스프링 데이터 JPA 스프링 데이터 JPA는 메서드 이름을 분석해서 JPQL을 생성하고 실행한다. 📌 쿼리 메서드 필터 조건 📌 스프링 데이터 JPA가 제공하는 쿼리 메서드 기능 COUN... TILSpringDataJpaSpringDataJpa [Spring Data JPA] 예제 도메인 모델 1. 예제 도메인 모델과 동작확인 📌 엔티티 클래스 Member와 Team은 다대일 관계! 📌 ERD (Entity Relationship Diagram) 외래키(FK)는 Member가 갖는다. 2. Member 엔티티 @Setter는 가급적 사용하지 말자. @NoArgsConstructor(access = AccessLevel.PROTECTED): 기본 생성자를 막고 싶은데 JPA 스펙상 ... TILSpringDataJpaSpringDataJpa Spring Data JPA에서의 Projection 방법 DB의 필요한 속성만을 조회하는 것을 projection이라고 한다. 아래와 같이 원하는 데이터를 Select하고 그에 맞는 자료형으로 반환을 받으면 될것 같았지만 작동하지 않았다. 조회를 원하는 속성들의 집합으로 인터페이스를 만든다. 나는 id만을 조회하기를 원하므로 getId()로 만든다. 이렇게 인터페이스를 작성했다면 아까 적은 잘못된 쿼리를 아래와 같이 수정 해준다. 가져오려는 속성이... SpringDataJpaJPAprojectionSpringJPA [SpringBoot][SpringDataJPA] 게시판 구현 (1) Entity (Entity class) Entity 클래스에서는 setter 메소드 대신 @Builder를 통해 제공되는 빌더 클래스를 사용하기 생성자와 빌더 클래스의 역할은 생성 시점에 값을 싣는 것이다. 생성자와 빌더 클래스의 차이로는 코드 실행 전 값을 싣을 필드를 명확히 지정하는 것이 불가능하지만 빌더 클래스는 코드 실행 전 값을 싣을 필드를 명확히 인지 할 수 있다. @Builder... TILSpringDataJpaSpringboot게시판SpringDataJpa TIL - JAVA spring DAY 17 오늘은 스프링 데이터 JPA를 학습하였다. 그동안 배웠던 많은 기술 스택이 있었지만 스프링 데이터 JPA의 편리성과 실용성은 실로 대단했다. 스프링 데이터 JPA 그런데 여기에 스프링 데이터 JPA를 사용하게 되었을 때... 그런데 스프링 데이터 JPA는 Repository에 구현 클래스 없이 인터페이스 하나만으로 개발이 끝났다.... 반복해서 개발해왔고 기본이라고 생각되었던 기본 CRUD ... Java SpringSpringDataJpaframeworkJava Spring [SpringBoot][SpringDataJPA] 게시판 구현 (3) ✔️ 구현기능 게시글 작성 및 파일 업로드 동시 처리 다중 파일 업로드 DB에 파일 자체를 저장하지 않고 파일 관련 정보만 저장. 파일 용량 설정 IOUtils 패키지는 대부분 static 메소드이기 때문에 객체를 생성하지 않고 바로 사용 가능하다. IOUtils 패키지 중 org.apache.commons.io.FileUtils를 사용해 파일 관련 처리를 수행한다. : 파일 정보가 저장될 ... SpringbootSpringDataJpaTIL게시판MultipartFileMultipartFile
[스프링 데이터 JPA] 프로젝트 환경설정 + web도 추가 해줘야 함 아무 코드를 짜지 않고 실행시켰을 땐 이렇게 떠야 성공 나는,, web을 빼먹고 프로젝트를 생성했다가 괜히 삽질을 했다,, 이는 간단한 "hello"만 띄우도록 한 컨트롤러를 만든 후 서버를 재시작한 결과이다. 잘 동작하는 것을 확인함 그리고 이렇게 두 가지 설정해주는 것 잊지말기(두번째 체크박스는 롬복 사용을 위함) H2 데이터베이스 버전은 꼬옥 이걸로 맞춰주기... TILSpringDataJpaSpringDataJpa [Spring Data JPA] 쿼리 메서드 기능 ① 📌 스프링 데이터 JPA가 제공하는 쿼리 메서드 기능 메서드 이름으로 쿼리 생성 메서드 이름으로 JPA NamedQuery 호출 @Query 어노테이션을 사용해서 리포지토리 인터페이스에 쿼리 직접 정의 2. 스프링 데이터 JPA 스프링 데이터 JPA는 메서드 이름을 분석해서 JPQL을 생성하고 실행한다. 📌 쿼리 메서드 필터 조건 📌 스프링 데이터 JPA가 제공하는 쿼리 메서드 기능 COUN... TILSpringDataJpaSpringDataJpa [Spring Data JPA] 예제 도메인 모델 1. 예제 도메인 모델과 동작확인 📌 엔티티 클래스 Member와 Team은 다대일 관계! 📌 ERD (Entity Relationship Diagram) 외래키(FK)는 Member가 갖는다. 2. Member 엔티티 @Setter는 가급적 사용하지 말자. @NoArgsConstructor(access = AccessLevel.PROTECTED): 기본 생성자를 막고 싶은데 JPA 스펙상 ... TILSpringDataJpaSpringDataJpa Spring Data JPA에서의 Projection 방법 DB의 필요한 속성만을 조회하는 것을 projection이라고 한다. 아래와 같이 원하는 데이터를 Select하고 그에 맞는 자료형으로 반환을 받으면 될것 같았지만 작동하지 않았다. 조회를 원하는 속성들의 집합으로 인터페이스를 만든다. 나는 id만을 조회하기를 원하므로 getId()로 만든다. 이렇게 인터페이스를 작성했다면 아까 적은 잘못된 쿼리를 아래와 같이 수정 해준다. 가져오려는 속성이... SpringDataJpaJPAprojectionSpringJPA [SpringBoot][SpringDataJPA] 게시판 구현 (1) Entity (Entity class) Entity 클래스에서는 setter 메소드 대신 @Builder를 통해 제공되는 빌더 클래스를 사용하기 생성자와 빌더 클래스의 역할은 생성 시점에 값을 싣는 것이다. 생성자와 빌더 클래스의 차이로는 코드 실행 전 값을 싣을 필드를 명확히 지정하는 것이 불가능하지만 빌더 클래스는 코드 실행 전 값을 싣을 필드를 명확히 인지 할 수 있다. @Builder... TILSpringDataJpaSpringboot게시판SpringDataJpa TIL - JAVA spring DAY 17 오늘은 스프링 데이터 JPA를 학습하였다. 그동안 배웠던 많은 기술 스택이 있었지만 스프링 데이터 JPA의 편리성과 실용성은 실로 대단했다. 스프링 데이터 JPA 그런데 여기에 스프링 데이터 JPA를 사용하게 되었을 때... 그런데 스프링 데이터 JPA는 Repository에 구현 클래스 없이 인터페이스 하나만으로 개발이 끝났다.... 반복해서 개발해왔고 기본이라고 생각되었던 기본 CRUD ... Java SpringSpringDataJpaframeworkJava Spring [SpringBoot][SpringDataJPA] 게시판 구현 (3) ✔️ 구현기능 게시글 작성 및 파일 업로드 동시 처리 다중 파일 업로드 DB에 파일 자체를 저장하지 않고 파일 관련 정보만 저장. 파일 용량 설정 IOUtils 패키지는 대부분 static 메소드이기 때문에 객체를 생성하지 않고 바로 사용 가능하다. IOUtils 패키지 중 org.apache.commons.io.FileUtils를 사용해 파일 관련 처리를 수행한다. : 파일 정보가 저장될 ... SpringbootSpringDataJpaTIL게시판MultipartFileMultipartFile