분류 전체보기 126

마이그레이션

마이그레이션 시 생각 못 했던 사항을 정리  - 마이그레이션 할 데이터 조회시 ID로 ORDER BY를 해준다.    -> 어디까지 완료된건지, 문제가 어디서 터진건지 확인 가능    -> 마이그레이션 할 데이터 조회 시점 이후에 추가된 데이터가 있는 경우 추가로 작업하기 편하다. - 마이그레이션 쿼리를 PL SQL로 하는 경우 에외나 문제 포인트에 ROLLBACK 처리를 해준다.    ->  DB 툴에서 설정해놓은 대로 ROLLBACK 되는 경우가 있는데,  툴에 의존하지 않고 ROLLBACK 할 수 있도록 예외 처리 코드를 넣어줘야 한다. 개발서버에서 DBEAVER로 PL SQL을 돌려봤는데, 에러가 발생했을 때 전체가 다 ROLLBACK 돼서 PL SQL 전체에 대해서 TRANSACTION이 잡힌다..

Project & Issu 2024.06.18

Ngrok - 외부에서 내 로컬로 접속하는 방법

Ngrok 설치 : 외부에서 내 로컬 네트워크로 접속 가능하게 해주는 프로그램 1. https://ngrok.com/ 가입, OS에 맞게 intall 2. Window에서 파일 실행 3. cmd로 ngrock.exe 파일이 있는 폴더에 접속 4. forwading ( https://dashboard.ngrok.com/get-started/setup/windows ) 4-1) token 설정 ngrok config add-authtoken {{토큰값}} Windows: "%HOMEPATH%\AppData\Local\ngrok\ngrok.yml"에 파일이 생성됨 4-2) 포워딩 ngrok http http://localhost:8080 결과에서 포워딩 된 https://91a8-1111-e11-11d1-44..

글쓰기 - 목차, 개요, 요약, 서론

목차, 개요, 요약, 서론. 이 네 가지의 정확한 차이점에 대해서 설명합니다. 먼저 뜻하는 의미가 무엇인지 살펴보면(국어사전) 1. 목차(目次)는 (目눈次버금)목록이나 제목, 조항 따위의 차례. 2. 개요(槪要)는 (槪대개要필요)간결하게 추려 낸 주요 내용. 3. 서론(序論)은 (序차례論논의)말이나 글 따위에서 본격적인 논의를 하기 위한 실마리가 되는 부분.(緖실마리論논의) 4. 요약(要約)은 (要필요約맺다)말이나 글의 요점을 잡아서 간추림. 여기서, 간추린다는 것과 추린다는 것의 차이를 짚고 넘어 갑니다. 간추리다 : 글 따위에서 중요한 점만을 골라 간략하게 정리하다. 추리다 : 섞여 있는 것에서 여럿을 뽑아내거나 골라내다. ===========================================..

기타 2024.03.25

feign client 버그 - java.lang.IllegalArgumentException: name is required

- 원인 : feign client로 통신할 때 파라미터 값에 (@RequestParameter String name ) '&'이 포함되어있으면 발생 - 해결 : @RequestBody를 사용해서 값을 넘겨준다. package com.....; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.data.domain.Page; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.anno..

Project & Issu 2024.02.29

Gradle

1. jar 파일을 로컬에 배포 1) jar : jar파일 생성 2) publishToMavenLocal : 로컬 저장소에 배포 (저장소 : C:\Users\{유저이름}\.m2\repository\com\{프로젝트 경로}....) publishToMavenLocal 해도 local에 배포된 1.0-SNAPSHOT 버전 jar파일을 사용하는 프로젝트가 새로운 jar파일을 다시 읽어들인다. 그러면 불러온 파일 내용 확인하고 다시 bootrun 해서 동작 확인 한다.(m2에 있는 jar파일의 class파일을 확인) External Libraries에도 읽어드린 jar파일이 잇어야 한다. 2. 새로 배포한 로컬의 jar 파일을 불러와서 사용 1) 의존성 추가하는 프로젝트의 버전 확인 a) .gradle 파일 확..

BasePathAwareController

BasePathAwareController 사용 이유 @RepositoryRestResource를 사용해서 spring data rest api 만들었을 때 api 경로를 확장하기 위해 사용 https://faithfull.me/overriding-spring-data-rest-repositories 사용 시 주의사항 사용할 때 헨들링 하는 타입을 Resources, HttpEntity , ResponseEntity 같은 타입으로 지정 ※ spring docs 확인하고 spring 프로젝트에서 소스들도 직접 확인해서 사용 방법을 살펴보면 좋다. spring docs https://docs.spring.io/spring-data/rest/docs/current/api/org/springframework/d..

카테고리 없음 2024.01.11

csv 파일 인코딩 문제

1.한글 문제 [문제] UTF-8로 인코딩해서 CVC 파일 출력 시 한글이 깨지는 문제 [해결] Microsoft Office EXCEL.exe 프로그램으로 csv 파일을 실행했을 때 'ANSI'라는 인코딩 방식으로 자동 인식한다. 'UTF-8'로 인코딩 된 파일을 'ANSI'로 읽으면 한글이 깨진다. 따라서 MS949로 인코딩 해서 출력한다. private void download(String pathFileNamee, resultList) { try (CSVPrinter csvPrinter = new CSVPrinter( new BufferedWriter( new OutputStreamWriter( new FileOutputStream(pathFileName, true), "MS949"/*Standa..

Project & Issu 2024.01.05

리눅스

명령어 gerp -r '{찾고싶은 단어}' {경로} -> 경로 하위에 있는 모들 파일 중에서 단어가 포함된 파일과 해당 내용을 출력 grep -r '20240104abcdef' /company/logs/ /company/logs 하위의 파일, 하위의 하위의... 파일이 모두 대상 /company/logs/test.log /company/logs/api-service/access/api-service_access.log /company/logs/api-service/info/api-service_info.log /company/logs/db-service/access/db-service_access.log /company/logs/db-service/info/ db-service_info.log [참고] ..