compile 고급 언어로 작성된 코드를 기계어 코드로 변환하는 일. JVM(Java Virtual Machine) 자바 프로그램 실행 환경을 만들어주는 소프트웨어 JRE(Java Runtime Environment) 자바 실행환경 JIT(Just In Time)컴파일
쉘 스크립트 파일을 만들 때에는 파일의 첫 번째 줄에 사용하고 있는 쉘을 지정해야 한다. 형식은 다음과 같다.실제 달러 기호를 사용하고 싶다면 \\를 이용해서 이스케이프 시퀀스를 사용해야한다.사용자 변수는 대소문자를 구분한다. 최대 20글자로 알파벳, 숫자 또는 밑줄로
Gitlab에서 Repository를 만들고 코드를 push 하려고 하는데, pre-receive hook declined 에러가 발생하면서 push가 실패했습니다.구글링을 해보니 Protected branches의 정책으로, Git Repository를 생성할 때 기
log는 서버에서 많이 사용한다. 어떤 형식으로든지 log를 출력하고 싶을 때 사용한다.우선 첫 번째 줄처럼 logging.getLogger()를 통해 logger를 생성해준다.이때, 파라미터로 아무것도 넣어주지 않으면 root logger가 생성되고, 로거의 이름을
SELECT NAME FROM ANIMAL_INSORDER BY DATETIMELIMIT 1SELECT NAMEFROM ANIMAL_INSWHERE DATETIME = (SELECT MIN(DATETIME) FROM ANIMAL_INS)
한 사람에게만 연락을 취하는 방식한 쪽으로만 탐색한다.탐색할 곳이 없다면, 그 전 탐색했던 곳으로 돌아간다.처음 시작한 곳에서 탐색이 끝난다.스택경로 정보의 추적을 목적으로 한다.배열방문 정보의 기록을 목적으로 한다.자신에게 연결된 모든 사람에게 연락을 취하는 방식큐방
그래프 그래프는 정점과 간선으로 이루어진다. 정점(vertext)은 연결의 대상이 되는 개체 또는 위치를 의미하고, 간선(edge)는 이들 사이의 연결을 의미한다. 무방향 그래프(undirected graph) 방향성이 없는 그래프 방향 그래프(directed gr
테이블 아래 조건을 만족하는 표만 자료구조의 관점에서 테이블이라고 한다. 표에 저장되는 데이터는 키와 값이 하나의 쌍을 이룬다. 키가 존재하지 않는 값은 저장할 수 없다. 모든 키는 중복되지 않는다. 자료구조의 테이블은 사전구조라고도 불린다. 더불어 맵(map)이라
추가 tip 변수명 lt <- left의 약자 rt <- right의 약자- right의 약자 대소문자 관계없이 비교 문자열 반전, 회문 str.replace 정규식 이용 String이 아닌 자료형끼리 +연산을 하면 숫자로 바뀌어서 연산이된다. String을
정렬 알고리즘의 이론상 성능 한계인 O(nlogn)의 한계를 넘어설 수 있는 현재까지 유일한 알고리즘길이가 같은 데이터들만 정렬이 가능하다. 정렬 대상 및 기준에 따라서 특정 알고리즘을 적용하여 길이가 다른 데이터들을 정렬할 수도 있다. 이 경우도 매우 제한적이다.데이
intellij 디버깅 break point에 우클릭하면 조건으로 break를 걸 수가 있다. (productId가 2L일때만 위 point에서 break가 되도록 지정) 특히나 for, while등의 반복적인 행위속에, 특정값이 들어올때만 break를 하고 싶은
public String\[] split(String regex);\-> 문자열을 regex(정규식)에 맞춰서 분리한다.public String\[] split(String regex, int limit);\-> limit 만큼 문자열을 자름split (String r
JAVA설치 참고https://jhnyang.tistory.com/224JDK11 버전부터는 JRE가 안에 포함되어있다. JRE가 따로 제공되지 않는다. 자바에 jlink가 생겨서 JRE를 별도로 설치하기보단 개발자들이 어플리케이션에 링크를 걸어서 실행환경을
HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜입니다. HTTP는 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트-서버 프로토콜이기도 합니다. 클라이언트-서버 프로토콜이란 (보통 웹브라우저인) 수신자 측에 의해 요청이 초기화되는
TCP 3-way Handshake 란? TCP는 장치들 사이에 논리적인 접속을 성립(establish)하기 위하여 three-way handshake를 사용한다. TCP 3 Way Handshake는 TCP/IP프로토콜을 이용해서 통신을 하는 응용프로그램이 데이터
선형 이하 시간 알고리즘 어던 문제건 입력된 자료를 모두 한 번 훝어보는 데에는 입력의 크기에 비례하는 시간, 즉 선형 시간이 걸린다. 그럼 선형 시간보다 빠르게 동작하는 알고리즘들은 입력된 자료를 다 보지도 않는단 말이다. 입력으로 주어진 자료에 대해 우리가 미리 알
교착상태 교착상태(Dead Lock)은 상호 배제에 의해 나타나는 문제점으로, 둘 이상의 프로세스들이 자원을 점유한 상태에서 서로 다른 프로세스가 점유하고 있는 자원을 요구하며 무한정 기다리는 현상을 의미한다. 아래 그림과 같이 자동차(프로세스)들이 현재 위치한 길(
세마포어와 뮤텍스 오늘은 세마포어와 뮤텍스의 개념과 차이점에 대해 알아보겠습니다. 잘못된 내용이 있으면 댓글로 피드백 주시면 정말 감사하겠습니다. 정의 세마포어와 뮤텍스는 "여러 프로세스나 쓰레드가 공유 자원에 접근하는 것을 제어하기 위한 방법" 으로 정의할 수 있습
동기(synchronous : 동시에 일어나는) 동기는 말 그대로 동시에 일어난다는 뜻입니다. 요청과 그 결과가 동시에 일어난다는 약속인데요. 바로 요청을 하면 시간이 얼마가 걸리던지 요청한 자리에서 결과가 주어져야 합니다. 요청과 결과가 한 자리에서 동시에 일어
쓰레드 (Thread) 프로그램 내부의 흐름, 맥 하나의 프로그램은 하나의 맥이 있고 이러한 맥을 쓰레드라고 한다. 멀티쓰레드, 다중쓰레드(Multithreads) 다중 쓰레드(Multithreads) 한 프로그램에 2개 이상의 맥 맥이 빠른 시간 간격으