Yeji's Tech Notes
반응형
article thumbnail
SpringBoot-@ShedLock 설정 방법
Spring 2021. 11. 17. 15:48

[ 목차 ] 1. dependency 추가 2. liquibase shedlock 추가 3. LockProvider 설정 4. @EnableSchedulerLock 5. Task 생성 Spring에서는 Scheduling jobs들을 위한 쉬운 API를 제공합니다. 기본적으로 Spring은 여러 인스턴스에 대한 스케줄러 동기화를 처리할 수 없습니다. 대신 모든 노드에서 동시에 작업을 실행합니다. Shedlock을 사용하면 예약된 작업이 동시에 한번만 실행하게 됩니다. (Shedlock은 Quartz의 대안으로 사용되는 java lib) Dependency추가 // shedLock for gradle compile("net.javacrumbs.shedlock:shedlock-spring:2.2.0") co..

article thumbnail
SpringBoot-@Scheduled설정방법
Spring 2021. 11. 5. 15:14

@Scheduled Scheduler는 내가 원하는 시간대에 주기적인 동작을 하기위해서 사용하기에 좋은 어노테이션이다. 1. @EnableScheduling annotation추가 TestSchedulerConfig class를 Scheduler실행 목적으로 사용하겠다 annotation을 붙여줬습니다. @Configuration : 이 어노테이션을 사용하지 않을 경우 스케쥴링이 동작하지 않습니다. spring에서 bean팩토리 설정과 관련된 어노테이션으로 IOC(의존제어역전)을 통한 객체 생성이 가능합니다. spring IOC 컨테이너가 해당 클래스를 Bean정의 소스로 사용합니다. 이를 통해 클래스 내부의 설정된 메소드들이 자동으로 돌아가도록 합니다. 2. @Scheduled 설정 @Scheduled..

article thumbnail
SpringBoot-@PathVariable에 특수문자 허용
Spring 2021. 10. 8. 15:43

springboot에서 Path를 입력 시 특수문자가 존재할 경우 텍스트 값이 짤려서 들어갑니다. 이 경우를 해결해주기 위해서는 인자 뒤에 ":.+"값을 추가해주면 됩니다. {test} -> {test:.+} import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; import lombok.extern.slf4j.Slf4j; @Slf4j @RestController public class TextTestController { @GetMap..

article thumbnail
python, postgres - psycopg2 사용법
기록 2021. 10. 5. 15:50

테이블 대규모 업데이트를 해야하는 상황이였는데 아직 순수 쿼리로만 업데이트를 하기엔 힘들어서 파이썬을 이용해 sql업데이트를 했습니다. 그때 사용한 파이썬 라이브러리가 psycopg2였습니다. 라이브러리 사용법과 구문에 대해서 간략하게 기록해 놓았습니다. 목차 1. 데이터베이스 연결하기 2. table 생성 3. 회원정보 입력 4. 회원정보 조회 5. connection close * jupyter notebook을 기준으로 작성했습니다. !(느낌표)를 사용하면 cmd창 사용이 가능합니다. import후 ip,dbname, user,password, port입력 1. 데이터베이스 연결하기 - psycopg2.connect : 데이터베이스명, 사용자 ID, PW를 입력하여 DB연결 - conn.cursor..

article thumbnail
postgres - 테이블 조회시 오류 (character with byte ...)
기록 2021. 9. 30. 08:15

현재 postgres에서 DB를 restore후 조회시 ERROR가 발생했습니다. character with byte sequence 0xc3 0xa9 in encoding "UTF8" has no equivalent in encoding "UHC" 이 에러는 클라이언트의 인코딩 타입이 맞지 않아서 발생하는 에러입니다. 해결방법 1. 클라이언트 인코딩 확인 DB => show client_encoding; client_encoding 값이 UHC인 것을 확인 2. 인코딩 타입 세팅 DB => set client_encoding = 'UTF8'; 3. 재확인 DB=> show client_encoding; 명령어 두개만 기억해주면 됩니다 show client_encoding; set client_encod..

java - 시간, 분 차이 구하기
언어/JAVA 2021. 3. 28. 11:02

1. 가정 주어진 시간(LocalDateTime)으로 현재시간 +-5분사이에 존재하는지 판단하는 케이스 2. 특이사항 날짜는 다를 수 있다. 시간으로만 판단해야된다.. 처음엔 단순하게 LocalDateTime.getMinute() 5 으로 판단하였다.. 이럴때 생기는 문제는 8시00분일때가 문제가 됐다.. 00분일때는 55분 05분 사이일때를 판단해야되는데 이 상황판단이 불가능 했을뿐만아니라 시간도 같이 판단해줘야되기 때문에 불가능한 케이스라고 판단하였다.. 밀리세컨즈, 아니면 calendar를 사용해서 차이를 구하려고 했지만, 날짜가 다르다는 변수가 존재해 이또한 불가능 했다... 그래서, LocalTime의 .isBefore(), .isAft..

반응형