분류 전체보기 14

@Controller와 @RestController의 차이

이번에 프로젝트를 하면서 카카오 API 로그인 및 마이페이지를 구현했다. 로그인을 한 후, 로그인 한 유저의 정보(userInfo)를 보이게 하고 싶었는데 이 과정에서 userInfo.html이 호출되는 것이 아닌, userInfo라는 문자열만이 뜨는 상황이 발생했었다. @RestController를 @Controller로 바꾸자 문제 상황은 해결됐지만, @RestController가 정확히 무엇인지, 이 둘의 차이점이 무엇인지 궁금해 이 글을 작성하게 되었다. 스프링 프레임워크에서는 Controller와 RestController 두 가지 컨트롤러 어노테이션을 제공하는데, 이 둘의 주요 차이점은 HTTP Response Body가 생성되는 방식이다. @Controller먼저 Controller는 전통적..

카테고리 없음 2024.05.19

LCS 알고리즘

LCS(Longest Common Subsequence, 최장 공통 부분 수열)보통 최장 공통 부분 수열(공통적으로 일치하는 수열 중 가장 긴 부분)을 나타내지만 최장 공통 문자열을 말하기도 한다.최장 공통 부분 수열은 문자열이 떨어져 있어도 상관없다. ACAYKP CAPCAK최장 공통 문자열은 부분 문자열이 연결된 형태여야 한다. ACAYKP BACAED이처럼 LCS 문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 백준 9251번 LCSimport sysdef lcs_length(X, Y): m, n = len(X), len(Y) # dp 테이블 초기화 dp = [[0] * (n + 1) for _ in range(m + 1)] ..

카테고리 없음 2024.05.04

[OS] Chap 01. 운영체제란?

운영체제의 정의 컴퓨터의 사용자와 하드웨어 사이에서 가교 역할을 하는 프로그램 하드웨어 그 자체가 가지고 있는 능력을 십분 발휘되도록 제어해주는 프로그램 컴퓨터가 컴퓨터 밖의 세계와 상호 동작하는 방법을 정의한 프로그램 운영체제의 역할 사용자 인터페이스(User Interface) → 가교와 자원 관리(Resource Management)를 위한 프로그램의 집합 일괄처리(Single-stream Batch Processing System) 1차 operating system의 등장 다수 개의 프로그램을 읽어 저장해 놓고, 한 번에 한 개씩의 프로그램을 실행시켜 주는 방식 작업은 차례대로 한 개씩 처리된다. 이 말은 한 개의 작업이 시작되면, 그 일이 완전히 끝날 때까지 다른 작업은 기다려야 한다는 뜻 프..

운영체제 2024.04.08

진로에 대한 고민

전공 선택 계기 학창 시절 나는 수학, 과학을 좋아하던 학생이었다. 몇 시간 동안 고민해서 수학 문제를 푸는 게 재미있었고, 과학을 배움으로써 일상생활 속에 소소하게 보이는 과학적 원리들이 너무 흥미로웠다. 그래서 자연스럽게 과학중점반으로 고등학교를 진학했다. 고등학교에 입학하고 처음 장래희망을 적어낼 때 나는 “연구원”을 썼었다. 그때는 그저 새로운 것을 공부하고 실험하는 게 참 재미있었던 것 같다. 하지만, 학년이 올라가며 대입에 대한 불안감, 다른 친구들을 보며 내가 이 분야에 재능이 있는 것인지에 대한 회의감, 성적에 대한 압박감으로 시험 한 번에 일희일비하는 등 스트레스가 너무 심해졌었다. 이윽고 고등학교 3학년이 되었을 때 내 장래희망은 대학생이 되는 것이었다…ㅋㅋㅋ 수시 6장을 쓸 때 고민이..

일상 2024.03.28