HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
♥️
2기 최종 프로젝트 팀별 공간
/
📚
[팀06] Books
/
🚙
백둥이 자유게시판
/
기초 코드 작성

기초 코드 작성

  • 배포를 스프린트 단위로 할 경우, 운영서버는 스프린트 전까지 아무것도 업데이트 되지 않는다.
  • 운영 서버 배포단이를 github flow 처럼 바로 배포 할 수 있는 상태로 만들어둘까여?
  • Controller + “DTO” 까지 목킹 해 두고 → 구현해나가기
월, 화, 수 내에 아래 코드들은 작성 하는 것을 목표로 한다
User + security
cors ( 레퍼런스 많으니 찾아볼까여 )
Team_i6_comepet_BE/SecurityConfig.java at develop · prgrms-web-devcourse/Team_i6_comepet_BE
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters You can't perform that action at this time. You signed in with another tab or window.
Team_i6_comepet_BE/SecurityConfig.java at develop · prgrms-web-devcourse/Team_i6_comepet_BE
https://github.com/prgrms-web-devcourse/Team_i6_comepet_BE/blob/develop/src/main/java/com/pet/common/config/SecurityConfig.java
Team_i6_comepet_BE/SecurityConfig.java at develop · prgrms-web-devcourse/Team_i6_comepet_BE
HTTPS + nginx
  • HTTPS 적용시 Swagger 에 보안 권한 관련 무언가가 있지 않을까요?
QueryDsl
  • 설정에 대해서 알아봐야함. → 월, 화 안에 알아볼 수 있음 !
Audit
JpaAuditConfig
BASEENTITY→ EASY
응답 객체 형태 → 일단 기존 형태 사용함
기본적인 Exception
  • 이전처럼 계층구조로 작성하기
Exception 들에 대한 Errorcode 열거 → enum 으로 관리하기
  • 서버에 로그를 출력할 때는, 유연한 예외 메시지를 출력하는게 필요하지만
  • 사용자에게 동적인 에러 메시지까지 제공해 줄 필요는 없다고 생각함
Flyway
저는 S3 사용한 각종 파일 업로드 클래스 설계 및 구현 할 생각이었음 ( ~ 수요일 )
  • S3 프론트 측에서 업로드 하시는지??
 
 

기술 스택

  • Programing Language : JAVA 17
    • 사용이유 : record 타입( 불변 ),
    • Spring boot 2.5.5 부터 Java17 도입되었음
    • 우리팀이 JDK 17을 도입한 이유
      JDK 8은 2014년 등장한 다소 오래된 Java 버전입니다. 그렇지만 위에서 보신 바와 같이 국내/외에서 현재까지 많이 사용되는 버전이기도 합니다. 그렇다면 왜 많은 분들이 다른 버전도 아닌 JDK 8을 사용하고 계실까요? 이제 아래에서 JDK 17의 업데이트 된 기능들을 소개드리며, 저희가 어떤 신규 기능에 매료되어 17버전을 선택하게 되었는지 설명...
      https://techblog.gccompany.co.kr/%EC%9A%B0%EB%A6%AC%ED%8C%80%EC%9D%B4-jdk-17%EC%9D%84-%EB%8F%84%EC%9E%85%ED%95%9C-%EC%9D%B4%EC%9C%A0-ced2b754cd7
      우리팀이 JDK 17을 도입한 이유
  • Framework : Spring Boot
    • Spring Data Jpa + QueryDsl
  • Build Tool : Gradle
  • Database : MySQL8
  • CI/CD : Github Actions , Jenkins
  • Docker
 

스터디 최대 인원
  • 정책상, 최대 인원 → DTO validation check
    • 10 명
  • 커스텀한 최대 인원 → 스터디 테이블에 대한 최대인원
 

 
이미지 테이블
  1. 하나의 테이블로 이미지 파일 관리하기
  1. 도메인 별로 이미지 관리 테이블 생성하기
      • 코드 중복 🤔
  1. 1개의 이미지만 있으면 되는 경우에는, 각 도메인 테이블에다가 url 컬럼까지 추가 해 두기
varchar vs Lob
 
Image 관련 데이터
  • url
  • fileName
  • domain 정보?
    • 스터디 → 1개
    • 프로필 → 1개
    • 책 → 1개
    • 게시글? → N 개
 
 
  • 하나의 테이블로 관리를 한다면 ( ImageEntity 자체가 갖는 정보들이 비슷하니까 - url, fileName, 엔티티id )
    • domain 타입
 
  • User 테이블에 → profileImageUrl column ?
     
     
     

    에러 응답 코드

    • 사용자 입력에 대한 검증 에러들 BindingError 들의 경우만 List 로 예외가 발생한다
      • 나머지경우
        • 에러코드
        • 에러메시지