๐Ÿงฉ T(Task) - ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ–ˆ๋˜ ๋ฌธ์ œ


๐Ÿ” D(Decision) - ์–ด๋–ค ์„ ํƒ์„ ํ–ˆ๋Š”๊ฐ€

@Entity
@Table(name = "member", indexes = @Index(name = "idx_username", columnList = "username", unique = true))
public class Member {
    @Id @GeneratedValue
    private Long id;

    @Column(nullable = false)
    private String username;
    // ... ์ƒ๋žต
}

๐Ÿ“ท ์ธ๋ฑ์Šค ์„ค์ • ํ™”๋ฉด:

๐Ÿ“ท ์ธ๋ฑ์Šค๊ฐ€ ์ƒ์„ฑ๋œ SHOW INDEX ๊ฒฐ๊ณผ:

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-11-16 แ„‹แ…ฉแ„’แ…ฎ 7.41.18.png


โš™๏ธ A(Action) - ๋ฌด์—‡์„ ์‹คํ–‰ํ–ˆ๋Š”๊ฐ€

@Test
void getMemberByUsernameTest() {
    Member member = memberRepository.findByUsername("75023b38-2563-4308-aed5-e190ca6b599b_member")
            .orElseThrow(() -> new IllegalArgumentException("not found"));
    Assertions.assertNotNull(member);
}

๐Ÿ“ท ์ธ๋ฑ์Šค ์—†์„ ๋•Œ ์„ฑ๋Šฅ ์ธก์ •: