Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자료구조와 함께 배우는 알고리즘 입문
- 이터레이터
- 스프링 시큐리티
- resttemplate
- d
- 알파회계
- 스프링부트핵심가이드
- 자바편
- 코드로배우는스프링부트웹프로젝트
- 목록처리
- 구멍가게코딩단
- 데비안
- 리눅스
- baeldung
- 네트워크 설정
- GIT
- 티스토리 쿠키 삭제
- 서버설정
- 코드로배우는스프링웹프로젝트
- 친절한SQL튜닝
- Kernighan의 C언어 프로그래밍
- /etc/network/interfaces
- 자료구조와함께배우는알고리즘입문
- iterator
- network configuration
- ㅒ
- 선형대수
- 처음 만나는 AI수학 with Python
- 페이징
- 처음 만나는 AI 수학 with Python
Archives
- Today
- Total
bright jazz music
백엔드 생성 및 초기 테스트 본문
--
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