JPA(25)
-
[Java+SpringBoot+JPA] 기본 CRUD 구현하기 (6) 조회수 증가 기능
🟢 공지사항 유형 선언 마우스 우클릭 → 생성 → 생성자/get public enum NoticeRole { PRODUCT("상품"), EVENT("이벤트"), DELIVERY("배송"), CHANGE("교환/환불"), ETC("기타"); private final String description; //생성자 NoticeRole(String description) { this.description = description; } //Getter public String getDescription() { return description; } } 🟢 Entity 생성 @Entity @Getter @Setter @AllArgsConstructor @NoArgsConstructor @Builder @Table(..
2024.01.02 -
[JPA] jpa정의 / 사용이유 / 작성방법
JPA (Java Persistence API) 자바 애플리케이션에서 관계형 데이터베이스의 데이터를 영속적으로 저장하고 검색할 수 있도록 도와주는 자바 표준 ORM(Object-Relational Mapping) 기술 데이터베이스와 객체 지향 프로그래밍 언어 간의 불일치를 해결 JPA 특징 java에서 직접 질의어를 구성해서 동작 (servlet에서) Mybatis 라이브러리를 이용해서 동작(처음부터 사용자가 질의어를 작성) JPA 라이브러리는 필드명과 예약된 형식으로 구성하면 자동으로 질의어 작성 DSLQuery라이브러리는 JPA에 만들기 힘든 질의어를 작성 값이 전달되는 과정 View ← DTO → Controller ← DTO → Service ← Entity → Repository ← Entity..
2023.12.31 -
[SpringBoot] Model 인터페이스 / 데이터전달 / 사용방법
Model 컨트롤러에서 뷰로 데이터를 전달하는 데 사용되는 인터페이스 뷰에 데이터를 전달할 때 사용 컨트롤러에서 처리된 데이터를 뷰에 적용하여 사용자에게 적절한 응답을 생성하는 데 도움 Controller의 메서드에서 매개변수로 받아옴 Controller의 메서드에 Model타입의 model 매개변수 추가 → Model 클래스 패키지 자동 임포트 됨 (앞 글자가 대문자이기 때문에 Model은 클래스 변수!) model 객체 받아오기 @GetMapping(”/hi”) public String niceToMeetYou(Model model) { return “greeings”; } 데이터 전달 model.addAttribute("변수명", 변숫값) //개별조회 @GetMapping("/productdetai..
2023.12.31 -
[SpringBoot 구조] Controller 설명 및 정의 / 어노테이션
[SpringBoot 구조] Entity 설명 및 정의 / 어노테이션 더보기 [목차] - Entity 정의 - Entity 구조 - Entity에 사용되는 어노테이션 종류 Entity 정의 자바 어플리케이션에서 관계형 데이터베이스의 데이터를 객체로 표현하는 데 사용 엔터티 객체를 통해 데 dalhyehye.tistory.com [SpringBoot 구조] DTO 설명 및 정의 / 어노테이션 DTO 정의 클라이언트와 서버 간의 데이터 전송을 위해 사용되는 객체 데이터베이스에서 가져온 데이터나 서비스 간의 통신에 필요한 데이터를 담고 있는 객체 교환할 자료에 따라 여러 개로 구 dalhyehye.tistory.com [SpringBoot 구조] Repository 설명 및 정의 / 어노테이션 [SpringB..
2023.12.31 -
[SpringBoot 구조] DTO 설명 및 정의 / 어노테이션
DTO 정의 클라이언트와 서버 간의 데이터 전송을 위해 사용되는 객체 데이터베이스에서 가져온 데이터나 서비스 간의 통신에 필요한 데이터를 담고 있는 객체 교환할 자료에 따라 여러 개로 구성해서 사용 필요한 데이터만을 포함하여 객체를 생성하므로, 불필요한 정보를 제외하고 필요한 정보만을 전송 가능 Entity와 1:1매칭할 필요 없음! DTO 구조 및 작성 방법 데이터를 담는 필드 기본 생성자와 필요한 생성자, getter 및 setter 메서드를 포함 @Data @Getter @Setter @Builder @AllArgsConstructor @NoArgsConstructor public class ProductDTO { private Integer productId; @NotEmpty(message = ..
2023.12.31 -
[Java+SpringBoot+JPA] 기본 CRUD 구현하기 (5) 검색 & 페이지 기능
보통의 게시판은 글번호 역순으로 나열이 되기 때문에 내림차순 정렬과 함께 페이지 번호, 검색기능을 추가 구현해 보겠다. 🟢 Repository 검색 조건을 추가해 준다. @Repository public interface ProductRepository extends JpaRepository { //상품명 @Query("SELECT p FROM ProductEntity p WHERE p.productName LIKE %:keyword%") Page findByProductName(@Param("keyword") String keyword, Pageable pageable); } 더보기 findAllBy 메서드 주어진 조건에 해당하는 모든 엔터티를 검색 반환 형식은 List이며, 조건에 해당하는 모든 결과..
2023.12.24