본문 바로가기

WEB37

스프링 배치 스프링 배치란? 일상적인 배치 처리 + 엔터프라이즈급의 시스템 처리 자바의 장점 + 스프링 프레임워크의 장점 = 모두 갖춘 배치 프레임워크 배치 처리에 대한 표준 인터페이스(JSR-352) 구현 대규모 온라인 커뮤니티 이미 실무에서 안정적으로 사용되고 발전해 온 이력 스프링 배치의 지원 기능 트랜잭션 관리 청크 단위의 처리 선언적 입출력 지원 병령처리 시작, 중지, 재시작 지원 재시도 또는 건너뛰기 지원 웹기반 관리 인터페이스 제공 (Spring Cloud Data Flow) 스프링 배치의 실무 사용 사례 배달 상점의 메뉴 등록 및 수정 프랜차이즈의 메뉴 및 가격 업데이트 회원 포인트 적립 쿠폰 발급 ETL (추출, 변환, 적재) 데이터 마이그레이션 검색 인덱싱 상품 관리 스프링 배치의 기술적 특징 개발.. 2023. 5. 14.
배치 서비스 배치 서비스란? 데이터를 모아서 처리 이벤트에 맞춰 실행된다. (트리거) 스케줄 배치 서비스 기본 3단계 [Read] 많은 데이터를 데이터베이스, 파일, 메세지로부터 읽는다. [Processing] 읽은 데이터를 로직에 의해 처리한다. [Write] 로직으로 처리된 데이터를 수정된 형태로 출력한다. 배치와 우리 일상 주기적인 은행 업무 쇼핑몰 알림 세금 고지서 일괄 처리 마트의 최저가 보상 처리 성적 일괄 처리 이커머스에서의 배치 기획전 전시 쿠폰 발행 고객의 포인트 적립, 환불 등록된 상품의 이미지 처리 판매자 정산 상품 진열 상품 검색 인덱싱 홈페이지 광고나 배너 배치의 특징 UI가 없다. (별도 UI툴 사용 가능) 대량의 데이터를 모아서 처리한다. 정해진 스케쥴에 맞춰 동작한다. 한 번 시작하면 어.. 2023. 5. 10.
Springboot properties 파일 분리 (local, prod, ...) 1️⃣ application.properties 파일을 로컬 환경, 운영 환경을 구분하여 적용시키기 1. properties 파일 분리 기존 application.properties 파일을 운영 및 개발로 분리하여 파일을 생성한다. application-{name}.properties 로컬환경은 local, 개발환경은 dev, 운영환경은 prod로 파일을 생성한다. (현재는 로컬(local), 운영(prod)환경 파일만 생성한 상태입니다.) 2. 애플리케이션 실행 1) Edit Configurations 설정 스프링 부트 실행 환경에서 Active profiles을 properties에 맞게 설정한다. 2) Environment Variables 추가 위의 추가시킨 environment variables.. 2023. 3. 17.
Springboot에서 java-email 활용하기 pom.xml spring-boot-starter-email 추가 org.springframework.boot spring-boot-starter-mail application.properties SMTP 설정 spring.mail.host=smtp.naver.com spring.mail.port=465 # naver 포트 spring.mail.username=송신용이메일@naver.com spring.mail.password=송신용이메일의비밀번호 spring.mail.properties.debug=true spring.mail.properties.mail.smtp.auth=true spring.mail.properties.mail.smtp.ssl.enable= true spring.mail.proper.. 2022. 11. 21.
[Spring] AOP 프로그래밍 AOP(Aspect Oriented Programming) AOP는 여러 객체에 공통으로 적용할 수 있는 기능을 분리해서 재사용성을 높여주는 프로그래밍 기법이다. 핵심 기능과 공통 기능의 구현을 분리함으로써 핵심 기능을 구현한 코드의 수정 없이 공통 기능을 적용할 수 있게 만들어 준다. 아래 예제와 함께 이해해보도록 하자. 1. 프로젝트 준비 메이븐 프로젝트의 pom.xml 파일에는 다음과 같이 aspectjweaver 의존을 추가한다. 이 모듈은 스프링이 AOP를 구현할 때 사용하는 모듈이다. org.springframework spring-context 5.0.2.RELEASE org.aspectj aspectjweaver 1.8.13 스프링 프레임워크의 AOP 기능은 spring-aop 모듈이 제공.. 2022. 6. 3.
[Spring] 빈(Bean) 🟢 IoC 컨테이너가 관리하는 객체를 '빈(Bean)'이라고 한다. 예를 들어 아래와 같이 new 키워드로 객체를 생성했다고 했을 때 이 인스턴스는 Bean이 아니다. OwnerController ownerController = new OwnerController(); 하지만 같은 ownerController 이지만 아래는 스프링 Bean이라 한다. applicationContext가 관리하는 객체에서 가져온 것이기 때문이다. ApplicationContext applicationContext; @Test public void getBean(){ OwnerController bean = applicationContext.getBean(OwnerController.class); assertThat(bean)... 2022. 6. 3.