본문 바로가기

전체 글

(45)
DBMS Lock의 종류(Shared Lock, Exclusive Lock) DBMS의 Lock이란? DBMS lock은 데이터베이스 내에서 여러 트랜잭션이 동시에 데이터에 접근하려는 경우 발생하는 데이터 불일치 문제를 해결하기 위해 사용되는 동시성 제어 메커니즘입니다. DBMS에서는 다양한 종류의 락(lock)을 제공하여 트랜잭션 간의 충돌을 방지하고 데이터 일관성을 유지한다. 예를 들어 학교에서 학생들을 관리하기 위한 프로그램이 있다고 가정할 때 아래와 같은 기능이 있을 것이다. A 기능 : 다수의 학생 정보(이름, 주소, 성별 등)를 검색하는 기능 B 기능 : 학생 상세 정보(이름, 주소, 성별, 성적 등)를 검색하는 기능C 기능 : 학생의 주소를 변경하는 기능 학생 테이블이 있다고 가정하면, A/B/C 각 기능에서 '학생' 테이블에 DML(select, update 등)을..
Eclipse 인코딩(JSP파일) 설정 방법 feat. eclipse2019 웹 프로젝트로 Spring MVC를 사용하기로 결정했다. jsp파일을 생성하면 자꾸 기본 인코딩 방식이 UTF-8이 아니라 자꾸 바꿔줘야 한다. 기본으로 UTF-8이 설정되게 만들어 보자 Window -> Preferences Web -> JSP FIles -> Encoding항목의 값을 UTF-8로 설정 -> Apply and Close 참고로 Web항목이 안 보인다면 Eclipse 다운로드 받을 때 Web 패키지 버전으로 다운로드하면 나타난다. 예를 들면, 위 사진에서 아래 항목 다운로드! 굳!
Eclipse 인코딩(UTF-8) 설정 방법 feat. eclipse2019 Eclipse를 실행하면 Workspace로 지정한 디렉토리가 기본으로 열린다. Workspace란 말 그대로 작업공간(코딩할 공간)이다. 이 공간의 Encoding 방식을 UTF-8 로 설정한다. 보통 window os 기반은 MS949로 설정되어 있는데, MS949를 그대로 두면 UTF-8로 인코딩되어있는 부분과 충돌 나서 한글이 깨질 수 있으므로 미리 맘편하게 설정해두자 Window -> Preferences General -> Workspace -> 하단에 'Text file encoding'에서 other클릭 후 UTF-8 선택 -> Apply and Close
Eclipse 초기 설정 방법 (폰트) feat. eclipse2019 오래간만에 Eclipse로 공부도 할 겸 초기 세팅을 했다. Eclipse로 Spring Web MVC 프로젝트를 만들어 볼 예정~ 1. 폰트 설정 개인적으로 Eclipse에서는 폰트가 너무 작으면 가끔 한글 같은 글자가 눌리는 현상이 발생하기 때문에 12p가 적당하다고 생각한다. Window -> Preferences 클릭 General -> Appearance -> Colors and Fonts Basic -> 나오는 항목 중 아래에 Text Font 클릭 후 -> Edit 원하는 대로 설정 후 확인 + 폰트 크기는 간단하게 Ctrl, +/- 로 바꿀 수 있음
[백준 1009 : JAVA] 분산처리 개요 a^b 의 경우 a가 어떤 숫자여도 1의 자릿수만 신경 쓰면 된다!! a의 1의 자릿수는 0, 1, 2 .... 8, 9 까지만 존재한다!! 문제 재용이는 최신 컴퓨터 10대를 가지고 있다. 어느 날 재용이는 많은 데이터를 처리해야 될 일이 생겨서 각 컴퓨터에 1번부터 10번까지의 번호를 부여하고, 10대의 컴퓨터가 다음과 같은 방법으로 데이터들을 처리하기로 하였다. 1번 데이터는 1번 컴퓨터, 2번 데이터는 2번 컴퓨터, 3번 데이터는 3번 컴퓨터, ... , 10번 데이터는 10번 컴퓨터, 11번 데이터는 1번 컴퓨터, 12번 데이터는 2번 컴퓨터, ... 총 데이터의 개수는 항상 ab개의 형태로 주어진다. 재용이는 문득 마지막 데이터가 처리될 컴퓨터의 번호가 궁금해졌다. 이를 수행해주는 프로그..
[백준 1004 : JAVA] 어린왕자 개요 한 가지만 알면 풀 수 있다. 시작점, 도착점 둘 중 하나만 각 행성 안에 있다면 무조건 진입/이탈을 해야된다. 문제 어린 왕자는 소혹성 B-664에서 자신이 사랑하는 한 송이 장미를 위해 살아간다. 어느 날 장미가 위험에 빠지게 된 것을 알게 된 어린 왕자는, 장미를 구하기 위해 은하수를 따라 긴 여행을 하기 시작했다. 하지만 어린 왕자의 우주선은 그렇게 좋지 않아서 행성계 간의 이동을 최대한 피해서 여행해야 한다. 아래의 그림은 어린 왕자가 펼쳐본 은하수 지도의 일부이다. 빨간 실선은 어린 왕자가 출발점에서 도착점까지 도달하는데 있어서 필요한 행성계 진입/이탈 횟수를 최소화하는 경로이며, 원은 행성계의 경계를 의미한다. 이러한 경로는 여러 개 존재할 수 있지만 적어도 3번의 행성계 진입/이탈이 ..
[백준 1010 : JAVA] 다리 놓기/ DP, 조합 개요 문제를 어떤 관점에서 바라보냐는 알고리즘 문제를 푸는 중요한 키이다. 이 문제는 조합(combination)을 이용하여 문제를 풀이할 수 있다. mCn을 구하는 문제이다. 직역하자면 m개 중에서 n개를 선택하는 경우의 수를 구하는 문제이다. 따라서 조합을 이용해야 하는데 기존의 조합의 식인 n! / ((n - r)! * r!)을 이용하기보다는 점화식인 f(n, k) = f(n - 1, k) + f(n - 1, k - 1)을 이용하면 된다. 위의 점화식은 마지막을 선택하냐 + 선택하지 않냐 의 관점을 이용한 점화식이다. 문제 재원이는 한 도시의 시장이 되었다. 이 도시에는 도시를 동쪽과 서쪽으로 나누는 큰 강이 흐르고 있다. 하지만 재원이는 다리가 없어서 시민들이 강을 건너는데 큰 불편을 겪고 있음을..
[백준 11725: JAVA] 트리의 부모 찾기/ 트리, DFS 개요 이 문제는 처음에 입력받은 순서대로 부모 노드 값을 저장하여 풀이하였는데 이렇게 푼 경우 누가 부모노드이고 누가 자식 노드인지 판별을 할 수 없는 문제가 발생하였다. 결국에는 입력받은 노드와 간선에 대한 정보를 인접리스트로 초기화하고 DFS를 이용하여 모든 경로를 탐색하며 부모노드 정보를 저장하여 풀이하였다. 기본적으로 DFS에 대한 이해가 바탕이 되어야 한다. 따라서 DFS에 대한 이해도가 낮다면 아래의 문제와 풀이를 먼저 보는 것을 추천한다. https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집들의 모임인 단지를 정의하고, 단지..