[Springboot] 블로그 만들기 프로젝트의 구성(project: Make Blog Code Structure)

LV UP·2023년 10월 4일

Backend

목록 보기
2/6

<스프링 부트 3 백엔드 개발자 되기(자바 편)> 책 내용을 참고하여 블로그 만들기 프로젝트를 진행한다.

Source tree

✅ java main code

.../src/main/java/org.example.springbootdeveloper/

➡ Controller

  • BlogApiController.java
    • HTTP 통신
    • Client 요청을 받는다.
    • Service단을 호출해 결과 값을 리턴한다.

➡ Service

  • BlogService.java
    • Controller에서 온 요청을 처리한다.
    • Repository에 Data CRUD 한다.

➡ Repository

  • JPARepository 상속
    • JPARepository는 Java Persistance API
      • Data를 관리
      • java 객체가 DB와 연결하게 해줌.

➡ domain

  • Article
    • Entity 객체
      • Entity : DB테이블 객체로 DB 테이블과 1대1 매핑된다.
      • setter 사용 지양

➡ dto (Data Transfer Object)

  • DTO : 계층 간 데이터를 교환 시 사용하는 객체
    • Client와 맞닿는 Controller에서 Entity대신 dto 주로 사용함
    • 그 외 Controller와 View간에서 사용함
    • getter/setter 사용
  • AddArticleRequest.java
    • toEntity() 를 사용해서 DTO를 Entity(DB객체)로 만든다.
  • ArticleResponse.java
    • 요청한 data를 전달하기 위해 ResponseEntity Type을 리턴
      • ReponseEntity : DB에 저장할 수 있도록 JPA로 받은 DB data를 java 객체로 만들어준다.

➡ SpringBoot main method

  • SpringBootDevApplication.java
    • Springboot 서버 실행

Resource

.../src/main

➡ yml 파일

  • application.yml
    • Springboot 속성 파일

➡ sql

  • data.sql
    • java sourcetree에 Entity객체인 domain/Article이 있는데
      여기에 sql문을 통해 데이터를 CRUD 함.

➡ static.js

  • article.js
    • html에서 발생하는 이벤트들 처리

➡ templates

  • article.html
    • 블로그 메인 페이지 html
  • newArticle.html
    • 새 블로그 페이지 생성 html

✅ java test code

.../src/main/java/org.example.springbootdeveloper/

➡ Controller

  • BlogApiControllerTest.java
    • BlogApiController 코드를 테스트한다.
profile
개발 블로그

0개의 댓글