JPA와 SpringBoot ( test, jar빌드 확인, mappedby JoinColumn 꿀팁)

jhwan·2024년 12월 2일
  1. Test Code를 위한 annotation과 방식
@ExtendWith(SpringExtension.class)
@SpringBootTest
public class MemberRepositoryTest {

    @Autowired MemberRepository memberRepository;

    @Test
    @Transactional // 이 어노테이션이 테스트가 끝난 후 롤백을 해버림
    @Rollback(value = false)
    public void testMember() throws Exception{
        //given
        Member member = new Member();
        member.setUsername("memberA");

        // when
        Long saveId = memberRepository.save(member);
        Member findMember = memberRepository.find(saveId);

        // then
        Assertions.assertThat(findMember.getId()).isEqualTo(member.getId());
        Assertions.assertThat(findMember.getUsername()).isEqualTo(member.getUsername());
        Assertions.assertThat(findMember).isEqualTo(member);
    }

}
  1. jar 빌드해서 동작 확인
    (1) ./gradlew clean build
    (2) cd build, cd libs
    (3) java -jar 이름.jar

  2. 꿀팁들
    (1) 일대다 다대일 관계에서 mapping : fk를 기준으로 fk가 있으면 @JoinColumn을 써주고 다른쪽에 List가 있는 경우에 mappedby를 적어준다.

0개의 댓글