no image
[백준][JAVA] 2468 안전영역
문제https://www.acmicpc.net/problem/2468 비가 내린 후 잠기지 않은 안전한 영역의 최대 개수 출력풀이import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.*;class Main { private static int [] dx = {-1, 1, 0, 0}; private static int [] dy = {0, 0, -1, 1}; private static int [][] map; private static boolean [][] visit; private static int n; public static void main(String[] args) thro..
2024.09.04
no image
[프로그래머스][JAVA] 문자열 내 마음대로 정렬하기
https://school.programmers.co.kr/learn/courses/30/lessons/12915import java.util.*;class Solution { public String[] solution(String[] strings, int n) { Arrays.sort(strings, (s1, s2) -> { if(s1.charAt(n) != s2.charAt(n)) return s1.charAt(n) - s2.charAt(n); // 오름차순 return s1.compareTo(s2); // n번째 문자가 같을 경우 앞선 문자열이 앞쪽에 }); return strings; ..
2024.07.25
no image
[프로그래머스][JAVA] x만큼 간격이 있는 n개의 숫자
https://school.programmers.co.kr/learn/courses/30/lessons/12954class Solution { public long[] solution(int x, int n) { long[] answer = new long [n]; for(int i=1 ; i 문제x부터 계속 x를 더한 결과를 n개 출력하는 문제였다. 알고리즘x부터 계속 x를 더한다는 말은 곱셈으로 간단히 나타낼 수 있으니 x*i로 쓰고총 n번을 반복하는데 시작이 x*1이여야 하니까 for문을 1~n으로 설정한다.반복문을 1부터 시작하도록 해주었으니 answer[i-1]로 0번째 자리부터 채워지도록 해줬다. 시도처음에는 제한조건을 제대로 보지 않고 시작해서 틀렸다.x*i에서..
2024.07.24
[Docker] Redis + Spring 컨테이너로 서버 배포시 docker java.net.UnknownHostException: host.docker.internal: Name or service not known 해결
상황 OS: ubuntu 20.04 Redis와 Spring 모두 docker compose를 통해 각각의 컨테이너를 띄울 때 redis를 사용하는 api를 호출하면 오류 발생 - local에서(MAC m2)는 정상 작동 - ubuntu 20.04 환경에서 안 됨 - 발생한 오류 docker java.net.UnknownHostException: host.docker.internal: Name or service not known 해결 /etc/hosts 파일에 "172.17.0.1 host.docker.internal"을 추가해준다.
2024.02.13
[Docker] 배포서버에서 이미지 실행시 exec format error
문제 Ubuntu 20.04 기반의 GCP 서버에서 docker 이미지를 실행했더니 다음과 같은 에러가 발생했다. exec /usr/local/openjdk-17/bin/java: exec format error 원인 apple silicon mac 기반의 개발환경에서 docker 이미지를 빌드하면, 다른 OS에서 실행했을 때 에러가 날 수 있다고 한다. 해결 로컬에서 이미지 build 시에 --platform 지정 docker build --platform linux/amd64 -t 아이디/레포 .
2024.02.12
no image
[GCP] Cloud SQL의 PostgreSQL사용 시 FATAL: password authentication failed for user "root" 오류
문제 Cloud SQL을 이용할 때 postgre SQL을 사용해서 로컬에 연결하려고 했더니 다음과 같은 오류가 발생했다. FATAL: password authentication failed for user "root" 원인 공식문서를 보니 PostgreSQL은 MySQL과 달리 사용자를 직접 생성해줘야 했다. https://cloud.google.com/sql/docs/postgres/connect-instance-local-computer?hl=ko#java 빠른 시작: 로컬 컴퓨터에서 Cloud SQL용 Cloud SQL에 연결 | PostgreSQL용 Cloud SQL | Google Cloud 의견 보내기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 빠른 시작:..
2024.02.09
no image
[Spring] Redis 사용 시 yml 설정시 주의 문구
문제 스프링 부트에서 redis를 사용하기 위해 아래와 같이 yml 입력했더니 spring: redis: host: localhost port: 6379 곧 사용할 수 없게 될 구성 프로퍼티 'spring.redis.host' 곧 사용할 수 없게 될 구성 프로퍼티 'spring.redis.port' 라고 주의 문구가 뜬다. 해결 spring.data.redis ~ 로 대체해주면 된다. spring: data: redis: host: localhost port: 6379
2024.02.05
no image
[GCP] GCP(Google Cloud Platform) 서버 배포 설정 방법(Compute Engine, Cloud SQL)
1. Compute Engine, VM 인스턴스 설정 1. 인스턴스 생성 GCP Compute Engine에서 VM 인스턴스를 생성한다. 상단의 인스턴스 만들기 클릭 다음과 같이 설정한다. 리전은 서울로 체크 e2-micro로 변경해준다. 안 해주면 무료 크레딧 금방 소모될 수 있다. 부팅디스크는 Ubuntu로 설정. HTTP 트래픽 허용, HTTPS 트래픽 허용 체크 인스턴스 생성 완료 2. 외부 IP 할당 인스턴스에 외부 IP를 등록해준다. 탐색 매뉴 -> VPN 네트워크 -> IP주소 액세스 유형 외부인 IP주소의 유형을 임시 -> 고정으로 해줘야 한다. 외부 고정 IP 주소 예약 클릭 고정 주소 이름 입력해주고, 네트워크 서비스 계층은 표준 리전은 서울 연결 대상은 생성했던 인스턴스 이름으로 맞춰..
2023.12.18
no image
[Java] Window Java 17 설치 방법
1. 아래 사이트에서 다운로드 https://www.oracle.com/java/technologies/downloads/#java17 Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts. www.oracle.com MSI installer로 설치해주기 2. MSI installer를 실행해주면 된다. JDK 설치 완료. 3. window + R 하고 sysdm.cpl 친다. 그러면 시스템 속성 창이 뜬다. 4. 시스템 속성 -> 고급 -> 환경변수 클릭 5. 시스템 변수 -> 새로 만들기 클..
2023.12.17