- embeded DB H2 μ¬μ©
- APIλ₯Ό κ°λ° λ° λ¨μ ν μ€νΈ
- Language: Java 17
- Framework: Spring Boot 3.4.2
- Database: H2 (Embedded)
- ORM: JPA (Hibernate)
- Build Tool: Gradle
- Testing: JUnit 5, Mockito
- κ²°μ API
- λ°μ΄ν° μ‘°ν API
- κ²°μ μ 체 μ·¨μ API
- κ²°μ λΆλΆ μ·¨μ API
No | Column Name | Type | Not Null | Default | Extra | Description |
---|---|---|---|---|---|---|
1 | id | BIGINT | β | AUTO_INCREMENT | PK, μλ μ¦κ° ID | |
2 | transaction_id | VARCHAR(20) | β | UNIQUE | κ΄λ¦¬λ²νΈ (20μ리) | |
3 | encrypted_card | VARCHAR(255) | β | μνΈνλ μΉ΄λ μ 보 | ||
4 | installment_months | VARCHAR(255) | β | ν λΆ κ°μ μ (0: μΌμλΆ) | ||
5 | transaction_amount | BIGINT | β | κ²°μ κΈμ‘ | ||
6 | type | ENUM('PAYMENT', 'CANCEL') | β | κ²°μ κ΅¬λΆ (κ²°μ /μ·¨μ/λΆλΆμ·¨μ) | ||
7 | vat | BIGINT | NULL | λΆκ°κ°μΉμΈ | ||
8 | string_data | TEXT | NULL | μΉ΄λμ¬λ‘ 보λ΄λ λ°μ΄ν° | ||
9 | created_at | TIMESTAMP | β | NOW() | κ²°μ μκ° |
No | Column Name | Type | Not Null | Default | Extra | Description |
---|---|---|---|---|---|---|
1 | id | BIGINT | β | AUTO_INCREMENT | PK, μλ μ¦κ° ID | |
2 | cancel_transaction_id | VARCHAR(20) | β | UNIQUE | μ·¨μ κ΄λ¦¬λ²νΈ (20μ리) | |
3 | cancel_amount | BIGINT | β | μ·¨μ κΈμ‘ | ||
4 | cancel_vat | BIGINT | NULL | μ·¨μ λΆκ°κ°μΉμΈ | ||
5 | type | ENUM('FULL', 'PART') | β | μ·¨μ νμ (μ 체취μ/λΆλΆμ·¨μ) | ||
6 | string_data | TEXT | β | μΉ΄λμ¬μ λ³΄λΈ μ·¨μ λ°μ΄ν° | ||
7 | result | VARCHAR(255) | NULL | μλ΅ λ°μ΄ν° | ||
8 | status | VARCHAR(255) | NULL | μ·¨μ μν | ||
9 | canceled_at | TIMESTAMP | β | NOW() | μ·¨μ μκ° | |
10 | transaction_id | VARCHAR(20) | β | FK to payment(transaction_id) |
κ²°μ κ΄λ¦¬λ²νΈ |
payment-project
βββ common # κ³΅ν΅ μ νΈ λ° μμ κ΄λ¦¬
β βββ constants
β βββ utils
βββ controller # API μμ² μ²λ¦¬
β βββ request
β βββ response
βββ domain # JPA Entity
βββ enums # Enum
βββ repository # JPA Repository
βββ service # λΉμ¦λμ€ λ‘μ§
β βββ dto
βββ PaymentProjectApplication.java