Spring Boot
-
<Spring Boot> queryAnnoationSpring Boot 2023. 8. 25. 15:42
queryAnnoation @Query ("string query") 를 이용해서 수행될 메서드를 직접 정의하는 방법입니다. 형식 @Query("Select m (alias) from (table명) m (alias) oder by m.컬럼명desc") List getListDescendig(); alias 는 내가 주고싶은 문자를 주면 된다. 대부분 entity의 첫 자를 소문자로 alias 로 부여한다. 필자는 이번 포스팅에서 m으로 부여하겠다. 위 쿼리에는 DB 에서의 함수들도 그대로 사용가능합니다. 만약 조건절에 들어갈 파라미터가 존재한다면, PreparedStatment 처럼 위치 홀더 같은 키워드를 이용해서 파라미터 데이터를 바인딩 시킬 수 있습니다. 홀더타입 ? : 자바의 삼항연산자와 같음 ..
-
<Spring Boot> queryMethodSpring Boot 2023. 8. 25. 14:55
queryMethod spring 에서는 다양한 형태의 쿼리를 진행 할 수 있도록 ORM 을 두고있다. 지금 볼 내용은 Spring JPA 에서 제공하는 쿼리 메서드이다. 즉 메서드 자체가 쿼리로 구성되어진다는 말이다. 이 쿼리 메서드는 다양하게 구성되어지는데, 문서를 참조해서 활용 시 이용하기. 대표인 예만 설명하겠습니다 원리 Repository 에 쿼리 메서드를 선언한다. 이때 쿼리 메서드가 리턴하는 리턴 타입도 같이 명기한다, 쿼리 메서드는 규칙이 존재하기 때문에 해당 규칙을 문서에서 확인 해야합니다. 쉽게 생각하면 이렇습니다. 리턴타입 쿼리 메서드 : 쿼리메서드는 엔티티를 대상으로 쿼리 시 사용하는 다양한 조건문등을 구성하는 원리입니다. ex) List 엔티티 대상으로 글 넘버 기준으로 start..
-
< Spring Boot > RepositorySpring Boot 2023. 8. 25. 14:21
Repository 스프링에서 제공하는 실제 CRUD 를 수행하는 인터페이스이다. 이 인터페이스를 이용해서 entity 객체를 대상으로 CRUD 를 진행하고, Entity 를 반영 결과를 실제 Table 에 반영한다. 때문에 모든 작업은 이 객체를 이용하게된다. 이 인터페이스는 내부적으로 상속 관계를 갖게되는데, Super 로는 Repository 라는 객체가 있고, 하위로는 단계별로 DB 처리 시 필요한 기능을 추가로 정의한 애들로 구성되어 있습니다. 이 중, JpaRepository 라는 최하위 인터페이스가 있는데, 이 인터페이스는 위의 부모들이 정의한 CRUD 의 기본 기능 외에 페이징 처리를 할 수 있는 기능까지 정의한 인터페이스이다. 떄문에 기본적인 CRUD 를 진행하는 경우, super 인터페..
-
< Spring Boot > EntitySpring Boot 2023. 8. 25. 12:25
Entity 란 ? 쉽게 하나의 테이블 명이될 클래스라고 생각하면 되며 entity 는 DB 의 table 입니다. DB 의 내용이 바뀌면 entity 의 내용도 바뀌며, 따라서 entity 에는 select, delete, update 만 담당하게 되어있습니다. 간단한 설명 다음에 코드를 보여드리겠습니다. Entity 생성에 사용되는 Annotation @Entity : JPA 에서 실제 DB의 테이블과 매칭 될 class 임을 명시하는 어노테이션 @Table : Entity 테이블에 매핑할 테이블 정보를 알려주는 어노테이션 속성으로 name 을 갖는데, 이값을 주면 값으로 테이블이 생성됩니다. default 는 entity 클래스 이름과 같은 이름으로 매칭됩니다. @ID : JPA 에서는 기본적으로 ..