
자바(JAVA)를 배운다면 지금 이글을 읽는 사람은 백엔드 개발자 일 것이다. 멀티 쓰레드는 기본 중에 기본으로 알아둬야한다. 하지만 처음 배운다면 되게 어려운 개념이라서 공부하기가 쉽지 않을 것이다. 남에게 알려준다면 항상 이렇게 알려준다고 생각하고 알기 쉽게 작성하게 되었다. 쓰레드 (Thread) Thread란? 프로그램의 실행 단위로, 컴퓨터의 중앙 처리 장치(CPU)에서 실행되는 작업을 나타냅니다. 개발자의 관점에서 본다면, 애플리케이션 코드를 하나하나 순차적으로 실행하는 것이 쓰레드가 됩니다. 쓰레드는 한번에 하나의 코드라인만 수행하며 이 쓰레드가 없다면 자바 애플리케이션 실행은 불가능 해집니다. 그럼 하나의 단일 쓰레드로 구성되어 있으면 싱글 쓰레드(Single Thread) 2개 이상처럼 ..

프로그래머스 완전 탐색 문제이다. 문제 설명 3명의 사람이 있는데 문제를 1번 부터 마지막 문제까지 다음과 같은 순서로 찍는다고한다. 1번이 문제 찍는 방식 : 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번이 문제 찍는 방식 : 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번이 문제 찍는 방식 : 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제 까지의 정답이 순서대로 들은 배열 answers가 주어 졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return하도록 solution 함수를 작성해라 제한 조건 입 출력 예시 Solut..

그리드간 형태 드래그 기능 예시 Sort 5를 Sort 2로 드래그를 하여 Sort 1과 Sort 2사이에 삽입이 되었다.그래서 Sort 2이후의 순번들은 하나씩 밀리게 된다. 나의 문제 상황 나는 이 그리드간 드래그 앤 드랍기능을 구현하면서 성능을 하나도 고려하지 않고 그냥 기능 구현에 급급했다.구현은 되었고 코드 리뷰와 테스트를 할 때 몇가지의 문제 상황을 발견하였다. 드래그를 하여 순번이 바뀌면 전체의 순번을 재정렬을 하는 코드로 구현하였다.중간에 삭제를 하면 전체의 순번을 재정렬하는 코드로 구현하였다.JPA를 사용하여 저장을 하였는데 전체의 순번을 재정렬하는데 반복문을 돌리면서 커넥션을 막 찌르고 있었다. 지금 생각해보면 진짜 개발도 못 하였고 개발자가 아닌 공부하는 것처럼, 학생처럼..

들어가기 전에 SPA (Single Page Application)싱글 어플리케이션으로 페이지 이동을 하지 않고 하나의 페이지로 내용만 계속 변경하는 것으로 구성된 웹 어플리케이션 입니다.예를 들어, Google 지도, Gmail, 구글 캘린더, 네이버 지도 등이 있습니다. MPA (Multi Page Application)페이지 이동할 때마다 매번 서버에 HTML을 받아와 페이지 전체를 렌더링하는 전통적인 웹 어플리케이션 입니다.예를 들어, 네이버, Amazon 등이 있습니다. 이게 뭣이야!? 라고 생각하시는 분들은 가볍게 무엇인지 알고오시는 것이 좋습니다. CSR (Client Side Rendering) 클라이언트 사이드 렌더링이라고 합니다. Client-Side Rendering (C..

DML 이란? Data Manipulation Language의 약어이며 데이터 조작어라고 불립니다. 그래서 DML은 데이터를 조작하기 위한 용도입니다. SELECT 표현법 칼럼 값은 소문자로 작성하고 나머지는 대문자로 작성하는 것이 관례입니다. -- [사용법] SELECT 컬럼 명[, 컬럼명...] FROM 테이블 명 WHERE 조건식; -- 작동 순서 : FROM → WHERE → SELECT 칼럼 값만 소문자(Java 연동할 때 데이터 넘겨주기 편하니까), 나머지는 대문자가 관례 DISTINCT 조회하고자 하는 칼럼에 중복된 값을 제외하고 딱 한번만 조회하고자 할 때 사용한다. 해당 칼럼명 앞에 기술하면 된다. 단, SELECT 절에 DISTINCT 구문은 단 한 개만 가능하다. -- [표현법] D..

문제 핵심만 설명하겠습니다. 승환이는 마지막 번호표를 받게 되었다. 설상가상으로 몇몇 양심에 털이 난 학생들이 새치기를 거듭한 끝에 대기열의 순서마저 엉망이 되고 말았다. 간식을 나눠주고 있던 인규는 학우들의 터져 나오는 불만에 번호표 순서로만 간식을 줄 수 있다고 말했다. 그제야 학생들이 순서대로 줄을 서려고 했지만 공간이 너무 협소해서 마음대로 이동할 수 없었다. 다행히도 대기열의 왼쪽에는 1열로 설 수 있는 공간이 존재하여 이 공간을 잘 이용하면 모두가 순서대로 간식을 받을 수 있을지도 모른다. 자칫 간식을 못 받게 될지도 모른다는 위기감을 느낀 승환이는 자신의 컴퓨터 알고리즘적 지식을 활용해 과연 모든 사람들이 순서대로 간식을 받을 수 있는지 확인하는 프로그램을 만들기로 했다. 사람들은 현재 1열..

타임 리프 (Thymeleaf) 백엔드 서버에서 HTML을 동적으로 렌더링하는 용도로 사용된다. 즉, SSR(Server Side Rendering) 을 한다. 순수 HTML을 그대로 태그사용, 유지하면서 뷰 템플릿도 사용할 수 있는 것을 네츄럴 템플릿 (natural template)라고한다. 즉, 타임리프는 네츄럴 템플릿이다. 스프링의 다양한 기능을 편리하게 지원해준다. 백엔드 개발자 라면 무조건 알아야하는 템플릿 중 하나입니다. SSR에는 JSP, 타임리프 등이 있지만 지금으로써는 타임리프만 알아도 되기 때문에 타임리프를 공부할 것이고 깊게 하는 것이 아닌 이런게 있구나 정도고 필요할 때 찾으면 되는 정도로 작성하게 되었습니다. 공식 문서 지금 현재 버전은 3.1 버전이며 현재 버전과 최신버전에 차..

이 글을 작성하는 이유 지금까지 DB에서 데이터를 가져와서 어떻게든 어딘가에 데이터를 담아 둘라고 하였다 안좋은 예시 HTML input에 ( ) 넣어 두었거나 어떠한 DOM 속성 id에 ( id="dataId" ) 이런식으로 넣어 두었다. 이렇게 담아 두어서 하나하나 컨트롤 하려고 하다보니 코드는 어지러워지고 코드를 유지보수하는거 조차 힘들어지기 시작하였습니다. 이 때, HTML 요소의 'data-' 로 시작하는 속성을 알게 되어서 깔끔하게 해결이 되어서 공유하기 위해 작성하게 되었습니다. 데이터셋 사용 사례 이렇게 Apple.com 사이트에서도 HTML DOM요소에도 data를 넣어서 사용하는 것을 볼 수 있습니다. 또한 이렇게도 사용할 수 있습니다. 이하 내용은 아래 예시를 가지고 하겠습니다. 삼성..

URL (Uniform Resource Locator) URL은 인터넷에 존재하는 여러 서버들이 제공하는 자원에 접근할 수 있는 주소를 표현한 것입니다. "프로토콜://호스트명:포트번호/경로명/파일명?쿼리스트링#참조" 형식으로 되어 있습니다. URL 객체를 사용하는 이유 URL 객체를 사용하여 URL 문자열을 파싱하여 프로토콜, 호스트, 포트, 경로 등의 구성 요소를 쉽게 추출하기 위해 URL 객체를 사용하여 URL 주소를 조합하여 새로운 URL을 생성하기 위해 URL 객체는 네트워크 리소스에 접근할 수 있는 핸들 역할을 하며 URLConnection 객체를 사용하여 웹페이지를 연결하기 위한 기본 객체로 사용하기 위해 URL 클래스의 메서드 공식 문서 Java17 API : https://docs.ora..

2018년도 카카오 BLIND RECRUITMENT 문제입니다. 비밀지도 문제 지도 암호를 해독 할 수 있는 방법이 있다. 지도는 한 변의 길이가 n 인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. 전체 지도는 두장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도1"과 "지도2"라고 하자. 지도1 또는 지도2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 즉, 지도1과 지도2에서 모두 공백인 부분은 전체 지도에서 공백이다. "지도1" 과 "지도2"는 각각 정수 배열로 암호화되어 있다. 암호화된 배열은 지도의 각 가로줄에서 벽 부분을 1, 공백 부분을 0 으로 부호화 했을 때 얻어지는 이진수에 해당하는 값의 배열이다. 입력과 조건 출력 형식 원래의..
- Total
- Today
- Yesterday
- 템플릿
- 개발환경
- java
- Fetch
- Mac
- jvm
- aws
- 개발자
- JavaScript
- 깃허브 액션
- 개발블로그
- 프로세스
- 프론트
- git
- Front
- 계단 오르기
- AJAX
- 코딩테스트
- 데이터 베이스
- Spring Security
- 실시간 채팅
- 비동기
- 개발
- 디자인패턴
- 오라클
- DBeaver
- spring
- 자바스크립트
- Cors
- 네트워크
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |