관리 메뉴

bright jazz music

백엔드 생성 및 초기 테스트 본문

Projects/react-spring

백엔드 생성 및 초기 테스트

bright jazz music 2024. 5. 15. 19:15

 

 

 

 

-- 

 

1. DB설정

2. 프로젝트에서 domain 패키지 만들고 거기에 Entity 생성하고 @Id와 @GeneratedValue(strategy = GenerationType.IDENTITY)로 설정

package com.test.mallapi.domain;

import jakarta.persistence.*;
import lombok.*;

import java.time.LocalDate;

//엔티티를 사용해서 DB와 애플리케이션 사이의 데이터를 동기화 하고 관리
@Entity
@Table(name="tbl_todo")
@Getter
@ToString
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Todo {


    @Id // DB의 pk가 됨
    // 고유한 pk를 가지게 하기 위해서 자동생성 방식을 사용. 이는 PK를 DB에서 자동 생성한다는 의미임.( 마리아디비의 경우 auto_increment)
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long tno;

    private String title;

    private String writer;

    private boolean complete;

    private LocalDate dueDate;
}

 

3. 레포지토리 생성

 

package com.test.mallapi.repository;

import com.test.mallapi.domain.Todo;
import org.springframework.data.jpa.repository.JpaRepository;

public interface TodoRepository extends JpaRepository<Todo, Long> {
//   JpaRepository를 상속해서 만드는 TodoRepository는 별도의 메서를 작성하지 않아도 CRUD와 페이징 처리가 가능
}

 

4. 레포지토리 테스트

dependencies {
   // ...
    testCompileOnly 'org.projectlombok:lombok'
    testAnnotationProcessor 'org.projectlombok:lombok'
}

build.gradle 수정하고 리로드. 롬복 로그를 테스트 중에도 심도 있게 사용하기 위함.

 

src/test 패키지의 내부 repository 패키지 추가하고 TodoRepositoryTest.java 파일 추가

 

package com.test.mallapi;

import com.test.mallapi.repository.TodoRepository;
import lombok.extern.log4j.Log4j2;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
@Log4j2
public class TodoRepositoryTests {
    @Autowired
    private TodoRepository todoRepository;

    @Test
    public void test1() {
        log.info("-----------------------");
        log.info(todoRepository);
    }
}

 

2024-05-15T20:46:56.879+09:00  INFO 16240 --- [mallapi] [    Test worker] com.test.mallapi.TodoRepositoryTests     : -----------------------
2024-05-15T20:46:56.897+09:00  INFO 16240 --- [mallapi] [    Test worker] com.test.mallapi.TodoRepositoryTests     : org.springframework.data.jpa.repository.support.SimpleJpaRepository@2cbae0f1

 

객체생성 확인(원래는 Assertions의 API를 사용하는 것이 권장된다)

 

'Projects > react-spring' 카테고리의 다른 글

백엔드 CRUD 테스트 + 페이징 테스트  (0) 2024.05.15
Comments