일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- it
- jsp
- devops
- 맛집
- IntelliJ
- JPA
- redis
- Spring
- java
- Web Server
- 요리
- php
- springboot
- Spring Boot
- ReactJS
- ubuntu
- Oracle
- db
- linux
- Git
- MySQL
- elasticsearch
- AWS
- tool
- jenkins
- Gradle
- docker
- Design Patterns
- javascript
- laravel
- Today
- Total
목록it (680)
아무거나
Mocking 라이브러리를 활용하자 프론트엔드 개발시에 가장 이상적인 프로세스는 기획, 분석, 백엔드 개발, 프론트 개발들의 작업들이 서로 겹치지 않고 각각 진행되는 것이 좋다. 하지만 진행하는 과정에서 나오는 이슈 또는 요구사항의 변경등으로 인하여 번거롭게 작업을 진행해야되는 경우가 많다. 또한 프론트 엔드 영역과 백엔드 영역에 대한 일정이 서로 겹치게 동시 진행하는 경우도 많으므로 백엔드의 API 의 의존적이게 작업해야하는 프론트엔드의 경우는 백엔드 API 기능들이 개발서버에 배포되기 전까지 프론트엔드에서는 진행하기에 번거롭다. (물론 백엔드쪽에서 굳이 개발서버 배포를 안해도 로컬에서도 바로 확인 할 수 있는 다른 방법들이 있지만 인원이 많을 경우 변동성이 적은 개발서버 기준으로 작업하는것이 안정적이..
일관적인 코드 스타일을 유지하기 위하여 Prettier 를 적용하자 1. VS Code 에 Prettier 플러그인 설치 2. Code > Preferences > Settings > Text Editor > Default Formatter > Prettier - Code formatter 로 변경 3. 검색창에 format on save 입력 후 체크 * Prettier 예외 설정 방법은 - ROOT 경로에 .prettierignore 파일 생성 (ex: 내용에 *.md 추가)
관리 도구로서의 Jenkins 를 통한 Spring Batch 운영 Spring Batch 는 아직까지 확실한 표준 관리 도구가 없다고 한다. 그래서 보통 클라우드 서버리스, 따로 API 기반 호출, Spring Batch Admin(더 이상 개선하지 않으며 Spring Cloud Data Flow 로 전환하라고함), Spring Quartz, Jenkins, Teamcity 등의 방법을 사용한다고한다. 여기서 Spring Cloud Data Flow 가 러닝커브도 높으며 아직 국내에서 많이 사용되는 사례가 적으므로 그 전까지 보편적으로 활용되는 Jenkins 에 대해서 알아보기로 한다. 1. 장점 1-1. 관리기능 관리 도구의 대표 기능들에 대해 기본으로 지원된다. (Ex: Dashboard, 이력관리..
ItemProcessor 이전글: Spring Batch 8편 - ItemReader 작업코드: 작업코드 ItemProcessor 는 데이터를 가공하거나 필터링하는 역할을 하고 있으며 필수가 아니고 이는 Writer 부분에서도 충분히 구현이 가능 하다. 그럼에도 사용하는 것은 Reader, Writer 와는 별도의 단계로 분리되었기 때문에 비즈니스 코드가 섞이는 것을 방지 해주기 때문이다. Batch 에 비즈니스 로직을 추가할때는 가장 먼저 Processor 를 고려하는 것이 좋다. (각 계층 읽기/처리/쓰기 를 분리할 수 있는 좋은 방법) 1. ItemProcessor 란 ItemProcessor 는 Reader 에서 넘겨준 데이터 개별건을 가공/처리 해준다. 변환 Reader 에서 읽은 데이터를 원하..
ItemWriter 이전글: Spring Batch 7편 - ItemReader 작업코드: 작업코드 1. ItemWriter 란 ItemWriter 는 Spring Batch 에서 사용하는 출력 기능이며 Spring Batch 초기에는 ItemReader 와 마찬가지로 item 을 하나씩 다루었지만 Spring Batch2 와 Chunk 기반 처리의 도입으로 인하여 ItemWriter 는 item 하나를 작성하지 않고 Chunk 단위로 묶인 item list 를 다룬다. 상기 코드를 보면 ItemReader 의 read() 는 item 을 하나를 반환하지만, Writer 의 write() 는 인자로 Item List 를 받는다. 하기 이미지를 참고하자. ItemReader 를 통해 각 항목을 개별적으로 ..
ItemReader 이전글: Spring Batch 6편 - Chunk-Oriented Processing 작업코드: 작업코드 1. ItemReader 란 데이터 -> (읽기) -> ItemReader -> ItemProcessor -> ItemWriter -> (쓰기) -> 데이터 상기 프로세스와 같이 ItemReader 는 데이터를 읽어들인다. 꼭 DB의 데이터만 의미하진 않고 XML, JSON 등의 다른 형식의 데이터도 읽는다. 이외에도 Spring Batch 에서 지원하지 않는 Reader 들도 직접 만들 수 있다. Spring Batch 의 Reader 에서 읽어올 수 있는 유형은 아래와 같다. 입력 데이터에서 읽어오기 파일에서 읽어오기 DB에서 읽어오기 다른 소스에서 읽어오기 직접 커스텀한 R..
Chunk-Oriented Processing (Chunk 지향 처리) 이전글: Spring Batch 5편 - Spring Batch Scope & Job Parameter 작업코드: 작업코드 Chunk Spring Batch 의 Chunk 란 각 커밋 사이에 처리되는 row 수를 의미한다. 즉, 한 번에 하나씩 데이터를 읽어 Chunk 라는 덩어리를 만든 뒤, Chunk 단위로 트랜잭션을 다루는 것 을 Chunk 지향 처리라고 한다. 또한 Chunk 단위로 트랜잭션을 수행하기 때문에 실패한 경우엔 해당 Chunk 만큼만 롤백 이 되며, 이전에 커밋된 트랜잭션 범위까지는 반영된다. 상기 이미지의 프로세스는 아래와 같다. Reader 가 누적해서 읽어 Chunk Size 를 맞춤 Processor 에선 ..
Scope & Job Parameter 이전글: Spring Batch 4편 - Spring Batch Job Flow 작업코드: 작업코드 Job Parameter, Scope 외부/내 에서 파라미터를 받아 처리할 때 해당 파라미터를 Job Parameter 라고 한다. Job Parameter 를 사용하려면 항상 Scope 를 선언해야 하는데 Scope 는 크게 @StepScope 와 @JobScope 가 있다. 사용법은 아래와 같다. @Value("#{jobParameters[파라미터명]}") 그 외에도 jobExecutionContext, stepExecutionContext 등 에도 SpEL 로 사용할 수 있다. @JobScope 에선 stepExecutionContext 는 사용할 수 없고, j..
SpEL(Spring Expression Language) 정의 런타임시 객체 그래프를 조회하고 조작하는 강력한 표현언어이다. EL(Unified EL) 과 비슷하지만 추가적인 기능을 제공 OGNL, MVEL, JBOss EL 등 자바에서 사용할 수 있는 여러 EL이 있지만 SpEL은 모든 스프링 프로젝트 전반에 걸쳐서 사용 가능 스프링 3.0부터 지원 가능 기능 리터럴 표현식 (Literal Expression) Boolean 및 관계 연산자 (Boolean and Relational Operator) 정규식 (Regular Expression) 클래스 표현식 (Class Expression) 속성, 배열, 목록, 맵 액세스 (Accessing Properties, arrays, lists, maps)..