분류 전체보기
-
[에러] gradle 프로젝트에서 모듈 추가 후 삭제 시 마주친 에러개발기록 2023. 4. 6. 09:49
에러 내용 및 해결책 Spring Boot gradle 프로젝트에 멀티모듈 구조에서 모듈을 하나 추가했다가 삭제했더니 build gradle에 실패하면서 Could not set process working directory to 'C:\파일경로': could not set current directory (errno 2) 해당 에러를 마주쳤다. 프로젝트 경로 디렉토리에서 .gradle과 .idea를 삭제 후 인텔리제이를 다시 실행하니 사라졌다. 참고: https://gall.dcinside.com/mgallery/board/view/?id=spd&no=36805 https://stackoverflow.com/questions/52571408/could-not-setcwd-errno-2-no-such-f..
-
[RSA] Java와 C# 간 RSA 공개키 호환 코드개발기록 2023. 3. 7. 20:03
개요 구글링했을 때 레퍼런스가 몇 개 없었을 뿐만 아니라 오래된 코드라 현재 프로젝트 버전에서 쓸 수 없었다. 여러 번의 시행착오와 레퍼런스들을 참고하여 호환되는 코드를 완성시킬 수 있었다. C# 코드는 없지만 아마 해당 코드로 키 발행 후 구글링하면 나오는 C# RSA암호화 코드를 쓰면 쓸 수 있을 것이다. 해당 코드를 만들면서 가장 큰 난관은 C#의 경우 키 형태가 Modulus와 Exponent로 구성된 xml 형태였다는 것이다. 그래서 String 형태의 공개키를 Modulus와 Exponent로 쪼개어봤지만 C#쪽에서 해당 키에 대해서 에러가 떴었다고 한다. 클라이언트(C#)를 개발하는 선배의 말에 따르면, The input is not a valid Base-64 string as it con..
-
[MyBatis] 쿼리문에서 >, < 등 부등호 사용하기개발기록 2023. 3. 6. 21:32
MyBatis에서 부등호 사용하는 법 MyBatis에서 날짜 조건을 사용해서 조회할 경우, WHERE test_date BETWEEN 'yyyy-MM-dd' AND 'yyyy-MM-dd' WHERE test_date >= 'yyyy-MM-dd' AND test_date 한다. WHERE test_date >= ]]> 'yyyy-MM-dd' AND test_date 'yyyy-MM-dd' WHERE test_date >= 'yyyy-MM-dd' AND test_date WHERE test_date >= 'yyyy-MM-dd' AND test_date <= 'yyyy-MM-dd' 위와 같은 방식으로 문제를 해결할 수 있다. 개인적으로 가독성을 생각하면 2번이 가장 좋은 방법인 것 같다. ※ cf) 부등호 치..
-
[알고리즘 + Python] 최단 경로 알고리즘 - 다익스트라(dijkstra), 플로이드 워셜(Floyd-Warshall)CS/알고리즘 2023. 2. 5. 22:07
해당 게시물은 동빈나님 유튜브 "(이코테 2021 강의 몰아보기) 7. 최단 경로 알고리즘"을 보고 학습용으로 기록한 것입니다. 최단 경로 문제 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미한다. cf. 다양한 문제 상황 한 지점에서 다른 한 지점까지의 최단 경로 한 지점에서 다른 모든 지점까지의 최단 경로 모든 지점에서 다른 모든 지점까지의 최단 경로 각 지점은 그래프에서 노드로 표현한다. 지점 간 연결된 도로는 그래프에서 간선으로 표현한다. 1. 다익스트라 최단 경로 알고리즘 개요 특정한 노드에서 출발하여 다른 모든 노드로 가는 최단 경로를 계산한다. 다익스트라 최단 경로 알고리즘은 음의 간선이 없을 때 정상적으로 동작한다. 현실 세계의 도로(간선)은 음의 간선으로 표현되지 않는다. 다..
-
[알고리즘 + Python] DP(Dymanic Programming, 다이나믹 프로그래밍)CS/알고리즘 2023. 2. 2. 21:27
해당 게시물은 동빈나님 유튜브 "(이코테 2021 강의 몰아보기) 6. 다이나믹 프로그래밍"을 보고 학습용으로 기록한 것입니다. DP 사용조건 다이나믹 프로그래밍은 다음 조건을 만족할 때 사용할 수 있다. 최적 부분 구조(Optimal Substructure): 큰 문제를 작은 문제로 나눌 수 있다. 중복되는 부분 문제(Overlapping Subproblem): 동일한 작은 문제를 반복적으로 해결한다. DP 예시 대표적인 문제로는 피보나치 수열이 있다. (cf. 점화식: 인접항들의 관계식을 의미한다.) // 피보나치 수열 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 ... * 피보나치 수열의 점화식 재귀함수를 통해서 점화식을 소스코드로 구현할 수 있다. 프로그래밍에서는 이러한 수열..
-
[알고리즘 + Python] DFS(Depth-First Search, 깊이우선탐색) & BFS(Breadth-First Search, 너비우선탐색)CS/알고리즘 2023. 2. 2. 21:27
해당 게시물은 동빈나님 유튜브 "(이코테 2021 강의 몰아보기) 3. DFS & BFS"를 보고 학습용으로 기록한 것입니다. Stack과 Queue 자료구조 1) Stack 파이썬에서 스택은 리스트 자료구조를 사용하면 된다. cf) stack[::-1] : 최상단 원소부터 출력 stack = [] stack.append(5) # 삽입 stack.append(2) stack.append(3) stack.append(7) stack.pop() # 제거 stack.append(1) stack.append(4) stack.pop() # 최상단 원소부터 출력 print(stack[::-1]) # [1, 3, 2, 5] # 최하단 원소부터 출력 print(stack) # [5, 2, 3, 1] 2) Queue 리..
-
[git] branch 확인 및 가져오기, 생성 후 Remote Repository에 push하기git 2023. 1. 15. 22:43
1. Local에 있는 branch 확인하기 git branch -a 2. Remote Repository에 있는 branch 확인하기 git branch -r 3. Local에 새로운 branch 생성하기 git branch 브랜치명 4. Remote Repository에 브랜치 생성하기 : Local에 먼저 만든 후 작업해야한다. 아닐 경우 아래와 같은 에러를 마주친다. error: src refspec feature/common does not match any error: failed to push some refs to 'https://github.com/S2LC/lbss-back.git' git push origin 브랜치명 명령어를 치면 아래와 같이 원격저장소에 브랜치가 생성되었음을 알려준다..
-
[Java] new 연산자가 아닌 @Builder를 선호하는 이유와 @Builder 사용 시 자주 마주칠 ExceptionJava 2023. 1. 15. 21:44
@Builder를 더 선호하는 이유 1. 가독성 2. 유지보수 3. (setter를 사용하지 않아) 변경 가능성 최소화 참고: https://mangkyu.tistory.com/163 * TestPost 객체를 만들기 위한 Class가 있다고 가정하자. package com.s2lc.lbssapi.domain; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Getter; import lombok.RequiredArgsConstructor; @Getter @Builder public class TestPost { private String postId; private String title; private String cont..