728x90
반응형
1. User.class
package com.tenco.bank.repository.model;
import java.sql.Timestamp;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString
@Builder
public class User {
private Integer id;
private String username;
private String password;
private String fullname;
private Timestamp createdAt;
}
2. Account.class
package com.tenco.bank.repository.model;
import java.sql.Timestamp;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Account {
private Integer id;
private String number;
private String password;
private Long balance;
private Integer userId;
private Timestamp createdAt;
// 출금 기능
public void withdraw(Long amount) {
// 방어적 코드 작성
this.balance-=amount;
}
// 입금 기능
public void deposit(Long amount) {
this.balance+=amount;
}
// 패스워드 체크 기능
// 잔액 여부 확인
// 세션-ID 확인 : 계좌 소유자 확인 기능
}
3. History.class
package com.tenco.bank.repository.model;
import java.sql.Timestamp;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@Data
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class History {
private Integer id;
private Long amount;
private Long wBalance;
private Long dBalance;
private Integer wAccountId;
private Integer dAccountId;
private Timestamp createdAt;
}
4. DTO와 VO
5. DTO와 엔티티의 차이점
728x90
반응형
'Springboot' 카테고리의 다른 글
[SpringBoot] 6. 메인컨트롤러와 메인페이지 구현하기 (0) | 2024.08.05 |
---|---|
[SpringBoot] 5. 화면 구현 (0) | 2024.08.05 |
[SpringBoot] 4. 모델링(1) - DB 모델링 (0) | 2024.08.05 |
[SpringBoot] 3. REST API란? (0) | 2024.08.05 |
[SpringBoot] 2. 패키지 설정 (0) | 2024.08.05 |