일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- git cli
- Java
- Spring Security
- mokito
- Stream
- producer
- JWT
- consumer
- 디자인패턴
- 싱글톤
- SpringBoot
- optional
- 카프카
- 함수형 프로그래밍
- Java8
- topic
- 인텔리제이 단축키
- Authentication
- Functional Programming
- TDD
- signWith
- Factory Method Pattern
- effective java
- thread
- orElseGet
- Clean Code
- junit5
- orelse
- kafka
- Today
- Total
목록분류 전체보기 (29)
goodbye
Mac (os 터미널) 에서 SSH key 등록하기 1. ssh key 생성 생성 파일의 경로 : ~/.ssh/id_rsa ssh-keygen -t rsa -C GibHub 계정 이메일 주소 2. GitHub Settings 메뉴 이동 New SSH Key 버튼 클릭 SSH Key 입력 : cat ~/.ssh/id_rsa.pub 3. 생성 완료 후 Generate 확인 ssh -T git@github.com 4. 맥에서 숨은 파일 확인 shift + command + . 5. Git에서 기본 편집기 변경하기 git config --global core.editor "notepad++" git 최초 설정 1. Git 전역으로 사용자 이름과 이메일 주소를 설정 git config --global user.n..
스프링 배치 메타 메이터 스프링 배치 의 실행 및 관리를 위한 목적으로 여러 도메인들의 정보를 제공하느 스키마 제공 과거, 현재 실행에 대한 성공과 실패여부 관리 - 배치운영 리스크 발생시 대처 DB와 연동할 경우 필수적으로 메타 테이블이 생성되어야 함 DB schema 파일 위치 : org.springframework/batch/core/schema-*.sql 스키마 생성 설정 수동 생성 : 쿼리 복사하여 직접 실행 자동 생성 ALWAYS : RDBMS 설정되어 있을경우 내장 DB보다 우선하여 실행 EMBEDDED : default - 내장DB일때만 자동으로 생성되며 실행 NEVER : 스크립트 실행 X BATCH_JOB_INSTANCE job이 실행될때 Job Instance 정보가 저장 job na..

build.gradle implementation 'org.springframework.boot:spring-boot-starter-batch' @EnableBatchProcessing 스프링 배치가 작동하기 위해 선언해야 하는 어노테이션 총 4개의 설정 클래스를 실행시키며 스트링 배치의 모든 초기화 및 실행 구성이 이루어진다 BatchAutoConfiguration 스트링 배치가 초기화 될때 자동으로 실행되는 설정 클래스 Job을 수행하는 Job LauncherApplicationRunner Bean을 생성 SimpleBatchConfiguration JobBuilderFactiory, SetpBuilderFactory 생성 스프링 배치의 주요 구성 요소 생성 - 프록시 객체 생성 BatchConfig..

java.util 패키지 import문을 사용하지 않아도 바로 사용할 수 있는 java.lang 패키지와는 달리 java.util 패키지는 import 문으로 패키지를 불러오고 나서야 클래스 이름만으로 사용할 수 있습니다. java.util.Arrays 클래스 Arrays 클래스에는 배열을 다루기 위한 다양한 메소드가 포함되어 있습니다. Arrays 클래스의 모든 메서드는 클래스 메서드(static method)이므로, 객체를 생성하지 않고도 바로 사용할 수 있습니다. 이 클래스는 java.util 패키지에 포함되므로, 반드시 import문으로 java.util 패키지를 불러오고나서 사용해야 합니다. binarySearch() 메소드 binarySearch() 메소드는 전달받은 배열에서 특정 객체의 위치..
1. 추상클래스 추상클래스는 일반적인 클래스와 동일하게 멤버 변수와 메서드를 갖습니다. 그리고 추가적으로 추상메서드를 갖습니다. 추상메서드는 메서드의 선언부만 존재하고 구현코드가 없는 아래와 같은 메서드를 말합니다. public String getMyProfile(int memberNo); 구현부가 없는 메서드를 단 하나라도 가진 클래스는 충상 클래스가 됩니다. 추상 클래스가 되면 new 키워드를 사용하여 인스턴스화 할 수 없습니다. 즉, 클래스를 쓸 수 없습니다. 이 크래스를 사용하려면 어떻게 해야 할까요? 다른 클래스가 이 추상 클래스를 상속받아야 합니다. 상속 받은 자식 클래스가 부모 클래스에 존재하는 추상메서드를 전부 오버라이딩하여 구현부를 작성하면 비로소 사용할 수 있는 객체가 됩니다. 2. 인..

1. 쓰레드 애플리케이션 코드를 하나하나 순차적으로 실행하는것은 쓰레드 자바 메인 메서드를 처음 실행하면 main 이라는 이름의 쓰레드가 실행된다 쓰레드가 없다면 자바 애플리케이션 실행은 불가능하다 쓰레드는 한번에 하나의 코드 라인만 수행한다 동시 처리가 필요하면 쓰레드를 추가로 생성한다 2. 요청마다 쓰레드 생성 ● 장점 동시요청을 처리할 수 있다 리소스(CPU, 메모리)가 허용할때까지 처리 가능하다 하나의 쓰레드가 지연되어도 나머지 쓰레드는 정상 동작한다 ● 단점 쓰레드 생성 비용은 매우 비싸다 -> 고객의 요청이 올 때 마다 쓰레드를 생성하면 응답 속도가 늦어진다 쓰레드는 컨텍스트 스위칭 비용이 발생한다 쓰레드 생성에 제한이 없다 -> 고객 요청이 너무 많이 오면 CPU, 메모리 임계점을 넘어서 서..