분류 전체보기 130

MySQL - index, 복합 인덱스 주의 사항, 스칼라 서브 쿼리 vs left join, index 실행 계획

index 인덱스와 카디널리티 (velog.io) [SQL] 인덱스(INDEX) (tistory.com) 인덱스 컬럼의 분포도 및 순서(오라클 인덱스) (tistory.com) DB Index 동작원리를 알아보자 | Eric's DevLog (데브로그) (kyungyeon.dev) 3장 인덱스 튜닝 - 그래서 어쩌라고? (velog.io) 인덱스 튜닝 – DATA ON-AIR (dataonair.or.kr) [mysql] 인덱스 정리 및 팁 (tistory.com) MySQL Index 특징 및 유의사항 정리 :: 뱀귤 블로그 (tistory.com) index란 데이터베이스에서 검색을 할 때 더 빠르게 검색하기 위한 기술입니다. index는 Clustered index와 Non Clustered Ind..

알고리즘

Array 배열 기초개념? 10분안에 정리해줌! - YouTube 검색 알고리즘? 기초개념 잡아드림. 10분 순삭. - YouTube 배열 1. 배열은 연결된 메모리 공간을 사용함. 2. 따라서, 배열은 빈칸이 없도록 데이터를 유지해야 . 3. 따라서, 연결된 순서값인 index를 가지고 특정위치값을 읽는 'Read'는 쉽지만, 무엇이 들었는지 모르는 중에서 찾아야 하는 'Search'와 공간을 옮겨갸 하는 'Add', 'Delete'는 시간이 많이 걸림. 탐색 1. 선형 탐색 (Linear Search) - 순서대로 탐색하는 것 2. 이진탐색 (Binary Search) - 정렬된 배열의 중간값부터 탐색하는 것 이진 탐색의 전제조건은 정렬된 리스트-이진탐색이다. 만약, 리스트가 정렬되지 않은 상태라면 ..

키워드 정리

코딩테스트 SQL (MySQL) (tistory.com) [MYSQL]코딩테스트용 문법 정리 :: 빈둥벤둥 IT logging (tistory.com) [MYSQL]코딩테스트용 문법 정리 📝 코딩테스트에서 자주 나오는 SQL 문법 정리 📌 요즘 코딩테스트에 SQL문제가 포함된 경우를 자주 만나고 있다. 📌 그럴 때마다 프로그래머스의 SQL문제를 다시한번 쭉 풀어보고 있으며 프로 moonsbeen.tistory.com Mysql 문자열 자르기와 나누기 함수 (tistory.com) Mysql 문자열 자르기와 나누기 함수 1. 왼쪽에서 문자열 자르기 left(컬럼명 또는 문자열, 왼쪽에서 잘라낼 문자열의 길이) 사용예 : SELECT left("https://abbo.tistory.com", 5) 결과 : ..

CORS와 쿠키(Same-Site, Secure, httpOnly), CSRF와 XSS

출처 이해하기 쉬운 웹 보안 모델 이야기 1 (SOP, CORS) :: Stay hungry, Stay foolish. (zairo.kr) [WEB] 동일 출처 정책(SOP)과 교차 출처 리소스 공유(CORS)란? (tistory.com) CORS와 쿠키(Same-Site, Secure, httpOnly) (velog.io) [WEB] 📚 악명 높은 CORS 개념 & 해결법 - 정리 끝판왕 👏 (tistory.com) [Web] CORS (Cross Origin Resource Sharing) 이해하기 (tistory.com) [Web] XSS와 CSRF (Cross Site Scripting and Cross Site Request Forgery) (tistory.com) XSS와 CSRF 차이점 (t..

Docker, Container, VM

Docker, Container, VM - 애플리케이션에 필요한 것들을 컨테이너라는 공간에 담아서 여기저기에 배포하기 쉽게 도와주는 플랫폼입니다. - 컨테이너 이미지를 통해서 컨테이너를 생성하여 배포합니다. - 한 hostOS에서 여러 어플리케이션을 동작시키고 싶을 때 사용하는 것이 가상화 기술인데, VM과 컨테이너가 대표적입니다. - 두 방식의 가장 대표적인 차이점은 OS를 공유하느냐, 그렇지 않느냐 입니다. VM은 OS를 공유하지 않기 떄문에 Host machine 위에서 Guest machine을 분리시킬 때 Guest machine에 운영체제를 포함시킵니다. 그래서 각 Guest machine은 용량이 매우 큽니다. 반면에 Container 방식은 모든 어플리케이션이 같은 OS를 공유해서 동작합니..

JWT 연습

Json Web Token 스프링 시큐리티 공부 18 - JWT (Json Web Token) (tistory.com) JWT 자바 가이드. 이 글은 OAuth와 JSON Web Token과 같은 토큰 기반의… | by Out of Bedlam | Medium server: port: 8080 servlet: context-path: / encoding: charset: UTF-8 enabled: true force: true spring: datasource: # h2 연결용 DB 정보 driver-class-name: org.h2.Driver # Database를 H2로 사용하겠다. # url: jdbc:h2:~/test # H2 접속 정보 # url: jdbc:h2:tcp://localhost/~/..

Project & Issu 2023.02.10

시간복잡도

배경 코딩 테스트 공부를 하다가 시간복잡도 개념을 확실히 하기 위해 정리하였습니다. 본론 시간복잡도란? - 시간 복잡도란 알고리즘의 연산횟수를 나타내는 척도입니다. - 시간 복잡도는 일반적으로 최악의 경우를 나타내는 빅오 표기법을 사용합니다. - 빅오 표기법은 연산횟수를 다항식으로 표현하여 최고차항의 계수를 제외시켜 나타내기 때문에 반복문의 반복 횟수를 계산하면 됩니다. tip - 연산 횟수는 데이터입출력(copy,move),산술연산(add,multiply),제어연산(if,while,for)이 있습니다. - 연산 횟수 중에서 반복문(for,while)의 반복횟수를 계산하면 빅오표기법을 간단하게 계산할 수 있습니다. 아래 예시를 보면 알 수 있습니다. int func (int n) { int sum = 0..

JPA란?

Java Persistence API - 자바 애플리케이션에서 ORM 을 사용하는 방식을 정의한 인터페이스입니다. - 주로 hivernate를 객체로 사용함 - 관계형 데이터베이스와 객체의 패러다임 불일치 문제를 해결할 수 있다는 점과 영속성 컨텍스트(엔티티를 영구 저정하는 환경) 제공이 큰 특징입니다. Hivernate - 자바 언어를 위한 ORM 프레임워크 Object Relational Mapping - 객체와 관계형DB를 맵핑해주는 기술 Spring Data JPA, Query DSL - JpaRepository 을 상속받아 repository 생성 -> 기본적인 CRUD 쿼리를 사용할 수 있게 해줌 - 쿼리 메서드, @Query 어노테이션을 이용한 JPQL, 네이티브 쿼리 사용, Query DS..