HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🚀
Random Bit Flip
/
✌️
[2기-빅토리] 4주차 RBF 액션
✌️

[2기-빅토리] 4주차 RBF 액션

주차
SpringBoot Part1
회고일
Apr 11, 2022
참여자
멘토
Property
tag

홍유석

  • maven 의존성 범위(provided, system)
    • 지금도 잘 이해가 가지 않는다. 나중에 직접 사용해보며 읽혀야할 듯 하다.
  • classpath 경로 찾을 수 없는 에러
Spring Boot Executable jar에서 file resource 처리
Spring에서 classpath에 있는 여러가지 resource 처리를 위해 Resource라는 인터페이스 구현체인 ClassPathResource를 제공합니다. 해당 기능으로 파일 객체로 반환을 하여 여러 처리를 하게 되는데, boot로 넘어와서 war로 빌드를 하고 tomcat배포가 되면 부담없이 File객체로 처리 할 수가 있습니다. 하지만 executable jar로 실행 할때 아래 코드는 문제가 생깁니다. .getURL()이나, exists() 기능은 classLoader가 처리하기 때문에 문제가 없지만, getFile() 문제가 다릅니다....
Spring Boot Executable jar에서 file resource 처리
https://sonegy.wordpress.com/2015/07/23/spring-boot-executable-jar%EC%97%90%EC%84%9C-file-resource-%EC%B2%98%EB%A6%AC/
Spring Boot Executable jar에서 file resource 처리
 

정경일

  • 과제 시 blackList 불러오는 중 inputStream 닫히는 경우 생겨서 문제 겪음
  • DTO와 DAO
    • testcode가 로직 검증의 역할 뿐만 아니라 개발자들끼리의 명세 역할을 함.
  • 생성자 기반 의존관계 vs 필드 기반 의존관계 주입
Spring Boot에서 깔끔하게 DTO 관리하기
우리는 스토리보드를 보고 Api 명세를 작성할 때 테이블 설계와 동시에 Request와 Response 등 DTO 디자인을 고민하곤 한다. 하지만 기획 당시 계획한 디자인을 준수하여 개발을 하다보면 프로젝트 패키지와 소스들이 지저분해지는 경우가 있다. Api별로 화면에 return하는 데이터가 달라 많은 DTO 파일을 생성하게된다. Entity들의 데이터를 가공하여 DTO에 Set Method 혹은 builder로 매핑하는 코드가 길어진다.
Spring Boot에서 깔끔하게 DTO 관리하기
https://velog.io/@p4rksh/Spring-Boot%EC%97%90%EC%84%9C-%EA%B9%94%EB%81%94%ED%95%98%EA%B2%8C-DTO-%EA%B4%80%EB%A6%AC%ED%95%98%EA%B8%B0
Spring Boot에서 깔끔하게 DTO 관리하기
 

김승은

  • KDTApplication에서 @PropertySource를 통해 외부 설정 주입이 잘 되지 않았음.
  • maven 빌드 시 JDK 버전이랑 IDE JDK 버전 같아야함. (빌드 시 에러 이슈 공유)
 

박상혁

  • 과제 코드에서 null 체크를 Optional로 사용해보려고 했으나 어려웠음.
    • Optional의 필요성..?
    • ofNullable 사용해보자
 

정현서

  • 프로퍼티 파일 주입하는 방식에 대해 많은 연습이 필요함을 느낌
  • 로그 레벨: 어떤 내용을 어떤 레벨로 해야할지
    • https://blog.lulab.net/programmer/what-should-i-log-with-an-intention-method-and-level/
    • 로그 작성 주의 사항
        1. 로그 파일/DB 생명 주기 & 저장소 용량 ⇒ 계획을 명확하게 수립하지 않고 운영하면 디스크 용량 부족 등 갑작스러운 장애가 발생할 수 있음
        1. 개인정보, 시스템 주요 정보 (시스템 보안, 계정 정보)가 들어가지 않게 작성해야 함