kwon's Blog

개발 블로그

스프링 부트 - 자동 로그인 (RememberMe)

Spring

스프링 부트 - 자동 로그인 (RememberMe) 로그인을 하면 자동으로 JSESSEIONID가 생성된다. JSESSEIONID는 웹 브라우저와 서버와의 연결고리이다. 기본 세션의 timeout 값은 30분이다.(톰캣) 세션이 만료되더라도 로그인을 유지하고 싶을 때 사용하는 방법 Remember-me는 쿠키를 사용한다. 인증을 하면, 쿠키에 암......

객체 지향 프로그래밍 (Object Oriented Programming)

Java

객체 지향 프로그래밍 (Object Oriented Programming)객체, 클래스, 인스턴스 개념객체 실제로 존재하는 것. 사물 또는 개념, 구현할 대상 클래스에 선언된 모양 그대로 생성된 실체 객체는 모든 인스턴스를 대표하는 포괄적 의미를 갖는다. oop관점에서 클래스 타입으로 선언되었을 때 객체라고 부른다. 클래스 객체를 정의해 놓은 것 (......

백준 14891번 톱니바퀴

Baekjoon algorithm

Problem 14891톱니바퀴문제총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴가 1번, 그 오른쪽은 2번, 그 오른쪽은 3번, 가장 오른쪽 톱니바퀴는 4번이다. 이때, 톱니바퀴를 총 K번 회전시키려고 ......

스프링 부트 - 로그인 및 사용자 인증 정보 참조

Spring

현재 인증된 사용자 정보 참조 스프링 시큐리티의 스프링 웹 MVC 지원 @AuthenticationPrincipal : 핸들러 매개변수로 현재 인증된 Principal 을 참조할 수 있다. Principal 은 인증 시 authentication에 들어있는 첫 번째 파라미터이다. 아래의 account.getNickname()에 해당. Account......

백준 1987번 알파벳

Baekjoon algorithm

Problem 1987알파벳문제세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으로 이동할 수 있는데, 새로 이동한 칸에 적혀 있는 알파벳은 지금까지 지나온 모든 칸에 적혀 있는 알파벳과는 달라야 한......

백준 11559번 뿌요뿌요(Puyo Puyo)

Baekjoon algorithm

Problem 11559Puyo Puyo문제뿌요뿌요의 룰은 다음과 같다. 필드에 여러 가지 색깔의 뿌요를 놓는다. 뿌요는 중력의 영향을 받아 아래에 바닥이나 다른 뿌요가 나올 때까지 아래로 떨어진다.뿌요를 놓고 난 후, 같은 색 뿌요가 4개 이상 상하좌우로 연결되어 있으면 연결된 같은 색 뿌요들이 한꺼번에 없어진다.뿌요들이 없어지고 나서 위에 다른 ......

백준 2206번 벽 부수고 이동하기

Baekjoon algorithm

Problem 2206벽 부수고 이동하기문제N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로로 이동하려 한다. 최단경로는 맵에서 가장 적은 개수의 칸을 지나는 경로를 말하는데, 이때 시작하는 ......

백준 5052번 전화번호 목록

Baekjoon algorithm

Problem 5052전화번호 목록문제전화번호 목록이 주어진다. 이때, 이 목록이 일관성이 있는지 없는지를 구하는 프로그램을 작성하시오. 전화번호 목록이 일관성을 유지하려면, 한 번호가 다른 번호의 접두어인 경우가 없어야 한다. 예를 들어, 전화번호 목록이 아래와 같은 경우를 생각해보자 긴급전화: 911 상근: 97 625 999 선영: 91 12 ......

프로그래머스 - 등굣길

Programmers algorithm

프로그래머스 - 등굣길등굣길문제계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = 4, n = 3 인 경우입니다. 가장 왼쪽 위, 즉 집이 있는 곳의 좌표는 (1, 1)로 나타내고 가장 오른쪽 아래, 즉 학......

프로그래머스 - 오픈채팅방

Programmers algorithm

프로그래머스 - 오픈채팅방오픈채팅방문제카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고, 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다. 채팅방에 누군가 들어오면 다......