전체 글 144

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (170~177번 문제풀이)

170. 가까운 1 찾기 class Solution { public int solution(int[] arr, int idx) { int answer = -1; for(int i=idx; i=end_num; i--){ answer[idx++] = start--; } return answer; } } 간단한 문제다. answer의 0번째부터 start값부터 1씩 뺀 값을 차례로 넣어주고 반환하면 된다. 172. 글자 지우기 class Solution { public String solution(String my_string, int[] indices) { String answer = ""; StringBuilder my_string2 = new StringBuilder(my_string); for (int..

[Spring Boot + Redis] Spring Boot에서 리프레시 토큰 사용하기(Redis)

Redis 설치하기 Redis 설치 방법 Redis NoSQL DB의 한 종류이며 우리가 흔히 사용하는 MYSQL, Orcal DB, PostgreSQL 등 RDBMS와 다르게 NoSQL DB이다. 그렇다면 무슨 차이이고 어느 상황에 사용해야 할까? RDBMS와 NoSQL의 차이 RDBMS (관계형 DB) - 데 ngwdeveloper.tistory.com Refresh Token의 목적 - Access Token의 유효기간을 짧고, 자주 재발급하도록 만들어 보안을 강화하면서도 사용자에게 잦은 로그아웃 경험을 주지 않도록 하는 목적으로 만들어졌다. Access Token은 리소스에 접근하기 위해서 사용되는 토큰이라면, Refresh Token은 기존에 클라이언트가 가지고 있던 Access Token이 만..

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (150~161번 문제풀이)

150. 원하는 문자열 찾기 class Solution { public int solution(String myString, String pat) { int answer = 0; if(myString.toLowerCase().contains(pat.toLowerCase())){ answer = 1; } return answer; } } myString과 pat을 모두 toLowerCase()를 사용해서 소문자로 변경했다. 그 뒤에 contains을 사용해서 포함되는지 체크하고 포함된다면 answer에 1을 대입했다. 만약 포함되지 않는다면 0이 담긴 상태에서 반환될 것이다. 151. 길이에 따른 연산 class Solution { public int solution(int[] num_list) { int..

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (140~149번 문제풀이)

140. 공백으로 구분하기 2 class Solution { public String[] solution(String my_string) { String[] answer = my_string.trim().split("\\s+"); return answer; } } my_string에. trim()을 사용해서 문자열 양끝의 공백을 제거해 준다. split안에 "\\s+"를 사용했는데 이것은 정규식이다. 하나 이상의 공백이 있으면 그걸 기준으로 나누게 한다. 저장된 result를 반환해 준다. 141. 공백으로 구분하기 1 class Solution { public String[] solution(String my_string) { String[] answer = my_string.split(" "); re..

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (134~139번 문제풀이)

134. 세 개의 구분자 import java.util.*; class Solution { public String[] solution(String myStr) { List list = new ArrayList(); int start = 0; int end = 0; for(int i=0; i start){ String sub = myStr.substring(start, end); list.add(sub); } start = i+1; } end = i+1; } if(end > start){ String sub = myStr.substring(start, end); list.add(sub); } if(list.isEmpty()){ return new String[]{"EMPTY"}; } else{ retur..

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (127~133번 문제풀이)

127. 문자열 묶기 import java.util.*; class Solution { public int solution(String[] strArr) { int answer = 0; Map result = new HashMap(); for(int i=0; i arr2.length) return 1; for(int a : arr1){ sum1 += a; } for(int a : arr2){ sum2 += a; } if(sum1 == sum2) return 0; answer = (sum1 > sum2) ? 1 : -1; return answer; } } if, else를 사용해서 우선적으로 길이를 비교하여 -1 / 1을 반환하도록 했다. 만약 길이가 같다면 for문으로 arr1의 원소의합, arr2의원소..

[Redis] Redis 설치 방법

Redis NoSQL DB의 한 종류이며 우리가 흔히 사용하는 MYSQL, Orcal DB, PostgreSQL 등 RDBMS와 다르게 NoSQL DB이다. 그렇다면 무슨 차이이고 어느 상황에 사용해야 할까? RDBMS와 NoSQL의 차이 RDBMS (관계형 DB) - 데이터 : 정해진 구조를 갖는 테이블로 데이터를 저장하고 각 테이블은 관계를 가질 수 있다. - 확장 : 주로 수직정 확장을 사용하며, DB 서버 자체를 업그레이드 하거나 강력한 하드웨어로 대체 - 스키마 : 고정된 스키마를 사용, 데이터의 구조를 사전에 정의해야 한다. - 데이터 복잡성 : 복잡한 관계를 가질 수 있고, JOIN 연산을 사용하여 데이터를 결합한다. - 활용 : 정형화된 데이터와 각 데이터 간의 관계가 중요한 업무에서 주로..

[Spring Boot + OAUTH2.0] Spring Boot 소셜로그인(네이버) 구현법(Oauth2.0)

Oauth2.0 사용자가 애플리케이션 또는 웹 사이트에 로그인할 때 사용되는 프로토콜 중 하나. 이 프로토콜은 보안된 방식으로 사용자의 정보를 제공하고, 다른 웹 사이트나 애플리케이션에서 해당 정보를 사용할 수 있도록 한다. - 자주 사용하지 않는 웹사이트에 개인정보를 입력해서 회원가입을 해야 하나? 할 때 간단하게 소셜 로그인을 사용해서 이용할 수 있다. 네이버소셜로그인을 위한 준비가 안되었다면 아래 링크를 통해 설정한 뒤 본 게시글을 따라 해야 한다. 네이버 소셜로그인을 위한 설정 네이버 소셜로그인을 위한 설정(Spring + Oauth2.0) 1. 네이버 앱 등록 https://developers.naver.com/apps/#/register 애플리케이션 - NAVER Developers devel..

[Spring Boot + OAUTH2.0] Spring Boot 소셜로그인(구글) 구현법(Oauth2.0)

Oauth2.0 사용자가 애플리케이션 또는 웹 사이트에 로그인할 때 사용되는 프로토콜 중 하나. 이 프로토콜은 보안된 방식으로 사용자의 정보를 제공하고, 다른 웹 사이트나 애플리케이션에서 해당 정보를 사용할 수 있도록 한다. - 자주 사용하지 않는 웹사이트에 개인정보를 입력해서 회원가입을 해야 하나? 할 때 간단하게 소셜 로그인을 사용해서 이용할 수 있다. 구글소셜로그인을 위한 준비가 안되었다면 아래 링크를 통해 설정한 뒤 본 게시글을 따라 해야 한다. 구글 소셜로그인을 위한 설정 구글 소셜로그인을 위한 설정(Spring + Oauth2.0) 1. 구글 API 콘솔 들어가기 https://console.cloud.google.com/projectselector2/apis/credentials/consen..

프로필사진

남건욱's 공부기록

반응형