일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- java bigdecimal
- redis
- codepipeline
- aws
- Airflow
- codebuild
- AWS CI/CD 구축하기
- Jenkins
- aws cicd
- chart.js
- codedeploy
- bootstrap
- COALESCE
- chartjs
- node
- kubeflow
- or some instances in your deployment group are experiencing problems.
- VPN
- 도커
- codedeploy error
- IntelliJ
- docker
- Flux
- Python
- Spring
- Spring Error
- SQL
- Kafka
- PostgreSQL
- JavaScript
- Today
- Total
목록백엔드/Spring (133)
Small Asteroid Blog
selet 문에 내가 원하는 값으로 리턴하기 위해 Querydsl 에서 Projections.fileds를 사용하는데 다음과 같은 에러가 발생했었다. @Override public List getMasterIdList(Long memberId) { return jpaQueryFactory.select( Projections.fields(AnswerDTO.class, answer.answerId.as("answerId"), answer.answerId.count().coalesce(0L).as("answerCount")) ) .from(answer) .where(answer.mberId.eq(memberId)) .fetch(); } Projections의 경우 생성자 기반이 아닌 필드 기반으로 가져올 때 ..
Springfox가 아닌 Springdoc으로 Swgger를 사용하는 이유 이전 Spring 에서 swagger를 사용할 때 springfox를 사용했는데 springdoc 에서 제공하는 swagger를 더 선호한다고해서 사용해보았다. springdoc는 webflux도 지원하며 더 사용하기 쉽다고 한다. Springdoc 사용하기 spring boot버전에 따라서 springdoc코드를 추가한다. spring boot 3버전부터 springdoc 2버전을 사용해야지 오류가 안난다. build.gradle //swagger implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0' config 파일 Springdoc에서는 config..

멀티모듈 사용하는 이유 서버를 여러개(api용, batch 용 등)를 사용하면 프로젝트를 여러개 만들어 사용하는데 프로젝트를 여러개 사용하는 경우 공통 코드를 사용할때 모든 프로젝트의 코드를 수정해주어야 한다. 이러한 불편한 점을 해결하기 위해서 멀티모듈을 사용하고자 한다. 멀티 모듈을 사용하면 코드를 분리해서 사용하기에 프로젝트별 코드 관리가 용이하다. 루트 프로젝트 생성하기 모듈을 담기 위한 루트 프로젝트를 생성하고 루트 프로젝트 안에서 모듈을 추가한다. 루트 프로젝트는 하위 모듈을 관리하는 역할만 하기 때문에 src 폴더를 삭제해도 된다. 모듈 추가하기 project 우클릭 > new > module 모듈을 추가한다. 모듈 추가 후 자식 모듈과 통신을 위해 루트 프로젝트 settings.gradle..

jasypt란 jasypt , 자시프트라고 읽는다고 한다. jasypt 는 자바 라이브러리로 쉽게 암호화 기능을 사용할 수 있도록 한다. DB 계정이나 중요한 키값을 평문으로 올리는 것이 아닌 암호화해서 올릴 수 있게하는 라이브러리로 스프링 프로젝트의 application.yaml 에서 중요 정보를 암호화할 때 많이 사용된다. 의존성 추가하기 mvn repository 에서 원하는 버전을 선택한다. https://mvnrepository.com/artifact/com.github.ulisesbocchio/jasypt-spring-boot-starter implementation 'com.github.ulisesbocchio:jasypt-spring-boot-starter:3.0.4' config 파일 만..

Meta-Data Schema 스프링 배치의 실행, 관리를 위한 목적으로 도메인의 정보를 정할 수 있는 스키마를 제공한다. 스프링 배치 라이브러리에서 DB 스키마를 제공한다. 해당 스키마는 모니터링 용도로만 사용되는 것이 아닌 실제 배치 작업이 실행되는 동안 사용되는 데이터들이 저장되는 장소이기 때문에 각 테이블에 어떤 데이터가 적재되는지 알고 사용하면 좋다. DDL script 는 org.springframework.batch.core 라이브러리에 schema-*.sql 데이터베이스별로 있다. 적재되는 순서는 다음과 같다. BATCH_JOB_INSTANCE BATCH_JOB_EXECUTION BATCH_JOB_EXECUTION_PARAMS BATCH_JOB_EXECUTION_CONTEXT BATCH_S..

Batch 란 Batch는 일괄처리란 뜻을 가지고 있다. 사용자와 상호작용 없이 여러 개의 작업을 미리 정해진 순서에 따라 중단없이 처리한다. 배치를 사용하기 위해서는 다음과 같은 조건이 만족해야한다. 대용량 데이터 : 대용량의 데이터를 가져오기, 전달하기, 계산하기 등의 처리 자동화 : 사용자 개입없이 자동으로 실행 견고성 : 잘못된 데이터를 충돌/중단 없이 처리하기 신뢰성 : 잘못된 내용을 추적 가능해야함 (로깅, 알림) 성능 : 지정한 시간 안에 처리를 완료하거나 동시에 실행되는 다른 어플리케이션과 방해되지 않게 처리 배치 타입 Spring Batch 용어 Job Job은 배치처리 과정을 하나의 단위로 만들어 놓은 객체입니다. 또한 배치처리 과정에 있어 전체 계층 최상단에 위치하고 있습니다. Job..