Push Stone's blog
-
[Spring/Project] 개인 프로젝트 시작
https://github.com/dadadamarine/DailyNotificationServer 위 프로젝트를 진행하면서 적용할 수 있는 기술들을 나열하였고, 이에 대해 차근차근 학습해가면서 프로젝트를 진행한다. 관련기술은 크게 배포자동화 : 도커, 젠킨스, Nginx Spring Framework Spring Batch git-flow 모니터링 ( 개인적으로 꼭 해보고싶다 ) Push Server 등이 있다. 단계 CI학습 및 CI 환경 구축 Jenkins를 통한 빌드,테스트 자동화 Jenkins + nginx...
-
[Spring/Project] CI관련 학습
첫번째로 배포자동화에 대한 학습을 한다. 아직 서비스되는 프로젝트를 유지보수한 경험이 전혀 없다. 내가 지금껏 해왔던 방식은 로컬에서 깃허브에 업로드하면, 서버에 들어가서 푸쉬받아서 다시 빌드해서 서버를 재실행 하는 방식이었다. 한번 이 복잡하고 힘든방식에서 벗어나보자. 하지만.. 도커는 알겠는데.. 도커로 배포를 한다고..?? 젠킨스를 이용하면 무중단 배포를 할수 있다고..? nginx는 정적 데이터 배포에 적합하다고..?...
-
[Spring] Tree 구조의 데이터 삭제
이전에 Tree구조로 구성된 카테고리를 db를 구현하였다. 이 구조에서 delete기능을 수행시에 전체 데이터가 한번에 삭제되는 문제가 있었다. 도메인 public class MenuCategory { ... @ManyToOne(cascade = CascadeType.ALL) @JoinColumn(name = "parentId") @JsonIgnore private MenuCategory parent; @OneToMany(cascade = CascadeType.ALL) @JoinColumn(name = "parentId") private List<MenuCategory> children = new ArrayList<>(); ... } import.sql을 통해 19개의 트리구조...
-
[Spring] Column unique 제약조건의 에러처리 삽질기
개요 Spring의 Entity 에서 Column(unique = true) 제약조건에 대한 핸들링을 하고싶었다. 같은 userId로 회원가입 했을때 unique 제약조건에에 대한 에러 핸들링을 처리하고 싶다. 결론부터 말하자면 DataIntegrityViolationException / ConstraintViolationException 으로 Controller Advice 에서 또는 비즈니스 로직에서 try catch 구문으로 처리하시면 됩니다. 본문 1. 테스트 코드 작성 먼저 어떤 에러가 발생하는지 알기위해 중복되는...
-
[Spring/번역] Spring Boot RESTful Service를 위한 유효성 검사방법
이글은 IN 28 MINUTES님의 게시글인 “Implementing Validation for RESTful Services with Spring Boot“ 을 번역한 글임을 밝힙니다. 이 가이드는 Spring Boot 에서 REST API/Service에 대한 유효성 검사를 효율적으로하도록 도와줄것이다. 학습내용 유효성 검사(validation) 란? 왜 유효성 검사가 필요한가? Hibernate Validator가 무엇인가? Bean Validation API가 무엇인가? 스프링 부트가 제공하는 기본 유효성 검사...