본문 바로가기
반응형

Spring17

로컬 Spring Boot에 SSL 적용하기 Facebook OAuth를 개발해야 하는 경우 등 로컬 환경에서 HTTPS 서버가 필요할때가 종종 있습니다. (페이스북 OAuth 설정 화면) 운영 혹은 개발 환경에서는 Nginx 혹은 AWS ELB와 같은 곳에서 SSL 인증서를 설치하기 때문에 순수하게 로컬 환경에서만 SSL 인증서를 사용할 수 있는 방법이 필요합니다. 이번 시간에는 Spring Boot 로컬 환경에서 SSL 인증서를 개발 & 적용 하는 방법을 소개 드리겠습니다. 먼저 프로젝트 디렉토리 안에서 다음과 같은 명령어를 실행합니다. keytool -genkey -alias bns-ssl -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650 -ali.. 2018. 10. 29.
7) 스프링부트로 웹 서비스 출시하기 - 7. Nginx를 활용한 무중단 배포 구축하기 이번 시간엔 무중단 배포 환경을 구축하겠습니다. (모든 코드는 Github에 있습니다.) 7-1. 이전 시간의 문제점? 이전 시간에 저희는 스프링부트 프로젝트를 Travis CI를 활용하여 배포 자동화 환경을 구축해보았습니다. 이젠 Master 브랜치에 Push만 되면 자동으로 빌드 & 테스트 & 배포가 자동으로 이루어집니다. 하지만! 배포하는 시간 동안은 어플리케이션이 종료가 됩니다. 긴 시간은 아니지만, 새로운 Jar가 실행되기 전까진 기존 Jar를 종료시켜놓기 때문에 서비스가 안됩니다. 하지만 최근 웹 서비스들은 대부분 배포하기 위해 서비스를 정지시키는 경우가 없습니다. 어떻게 서비스의 정지 없이 배포를 계속 할 수 있는지 이번 시간에 확인하고 서비스에 적용해보겠습니다. 7-2. 무중단 배포? 예전.. 2018. 2. 2.
SpringBoot 환경에서 Spock 사용하기 안녕하세요? 저번시간에 이어 Spring Boot & Spock 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 2. SpringBoot + Spock 실제 SpringBoot 환경에서 Spock을 어떻게 사용할지에 대해 소개드리겠습니다. Spock은 모든 Spring Boot 테스트 코드를 JUnit과 거의 흡사하게 사용할 수 있어 아주 쉽게 적용할 수 있습니다. 기본적인 사용법부터 하나씩 진행하겠습니다. 2-1. 기본 사용법 스프링 컨텍스트를 호출하여 검증하는 간단한 테스트 코드를 작성해보겠습니다. Bean.. 2017. 10. 1.
2017.2 버전에 추가된 기능 정리 IntelliJ 2017.2 버전에서 추가된 기능에 대한 소개가 IntelliJ 블로그에 올라와 정리하였습니다. Endpoints TabEndpoints Tab이 추가되었습니다. Run/Debug 실행시 등장하는 화면에는 이제 SpringBoot Actuator의 Beans, Health, Mapping 정보들이 같이 노출됩니다. 단, 해당 기능은 compile('org.springframework.boot:spring-boot-starter-actuator')과 같이 프로젝트에 spring-boot-starter-actuator 의존성이 포함되어있어야만 합니다. (spring-boot-starter-actuator가 없을 경우) (spring-boot-starter-actuator가 있을 경우 - He.. 2017. 8. 31.
Spring Batch에서 영속성 컨텍스트 문제 (processor에서 lazyException 발생할때) 안녕하세요? 이번 시간엔 springboot-batch에서 reader로 읽은 데이터를 processor로 넘길때 영속성 컨텍스트가 문제가 되는 상황을 해결해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 문제 상황주문 시스템을 구축한다고 가정하겠습니다. 주문을 받은 뒤, 배치를 돌면서 주문의 내용을 History 테이블에 저장하는 기능입니다. 주문(PurchageOrder) 테이블에는 상품(Product)이 OneToMany로 잡혀있습니다. 도메인 코드는 아래와 같습니다.그리고 이를 사용한 배치 코드는 아래와 같습니다.(.. 2017. 4. 14.
Spring Validation 공통모듈 만들기 안녕하세요? 이번 시간엔 유효성 체크(이하 validation) 공통 모듈 생성하는 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 예를 들어 아래와 같은 회원 가입 양식이 있다고 가정해보겠습니다. 대부분의 입력 양식처럼 위 양식도 등록시 몇가지 조건들이 있습니다.이름/휴대폰번호/이메일은 필수값입니다.휴대폰번호는 10자리 혹은 11자리의 숫자로 이루어져야 합니다.이메일은 이메일 양식을 지켜야한다 (xxx@xxx)이메일은 중복 등록 할 수 없다.이 조건들을 체크하기 위해서 많은 분들이 하는 방법중 하나가 jque.. 2017. 3. 6.

728x90
반응형