티스토리 뷰

앞서 JDBC로 Java와 DB간의 연결통로를 이어줬다

그럼 DB연결도 끝났고, 이제 진짜 글을 쓰면 되는걸까?

..라기에는 하나 더 생각해봐야할게 있다. 사용자가 화면에서 데이터를 입력(ex: 제목이라던지)하고 등록을 하면,

그 데이터는 DB까지 어떻게 가지고 가야할까?

그냥 변수 N개 만들어서 던져주면 안되나?? 라고 하면 안될건 없다 다만 코드가 파라미터를 낱개로 던져주면 코드가 굉장히 지저분해질 것이다. 게다가 입력 항목이 늘어날수록 메서드 괄호 안이 늘어나는 참사가 일어날 것이다

 

그래서 어쩌라는거지?

이 데이터들을 포장해서 담아 나를 바구니가 필요하다.

그게 바로 DTO(Data Transfer Object) 라고 부른다. 해석하면 데이터 전송 객체라는것이다

 

그럼 바구니 즉 DTO라는걸 어떻게 만들어야 할까?

이건 2편에서 작성한 Board 테이블과 구조가 똑같이 생기면 된다

구조상 com.study.dto에 패키지를 만들고 그 안에 BoardDto를 만들어보자

public class BoardDto {
  
  //DB 테이블과 1:1 매칭
  private Long id; //게시글 번호
  private String category; //카테고리
  private String title; //제목
  private String writer; //작성자
  private String password; //비밀번호
  private String content; //내용
  private int viewCount; //조회수
  private LocalDateTime createdAt; //등록일시
  private LocalDateTime updatedAt; //수정일시 
}

똑똑한 인텔리제이가 만들어주었다

Alt + I 를 눌러 Getter, Setter도 생성해주자

 

더보기
더보기
public Long getId() {
    return id;
  }

  public void setId(Long id) {
    this.id = id;
  }

  public String getCategory() {
    return category;
  }

  public void setCategory(String category) {
    this.category = category;
  }

  public String getTitle() {
    return title;
  }

  public void setTitle(String title) {
    this.title = title;
  }

  public String getWriter() {
    return writer;
  }

  public void setWriter(String writer) {
    this.writer = writer;
  }

  public String getPassword() {
    return password;
  }

  public void setPassword(String password) {
    this.password = password;
  }

  public String getContent() {
    return content;
  }

  public void setContent(String content) {
    this.content = content;
  }

  public int getViewCount() {
    return viewCount;
  }

  public void setViewCount(int viewCount) {
    this.viewCount = viewCount;
  }

  public LocalDateTime getCreatedAt() {
    return createdAt;
  }

  public void setCreatedAt(LocalDateTime createdAt) {
    this.createdAt = createdAt;
  }

  public LocalDateTime getUpdatedAt() {
    return updatedAt;
  }

  public void setUpdatedAt(LocalDateTime updatedAt) {
    this.updatedAt = updatedAt;
  }

깔끔하게 잘 생성 되었다

이렇게 간단히 Dto를 만들어보았다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2026/08   »
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
글 보관함