전체 글
-
벡터의 선형결합(linear combination)수학 2024. 5. 16. 11:42
단위벡터선형결합을 설명하기에 앞서 우선 단위벡터에 대해 설명하겠습니다. (1, 0)과 (0, 1) 좌표로 표현되고 길이가 1인 벡터를 2차원 공간의 단위벡터 또는 기본벡터라고 부릅니다.x축에 위에 놓여있는 단위벡터를 e₁ 혹은 î(i햇)이라 표현합니다.y축에 위에 놓여있는 단위벡터를 e₂ 혹은 ĵ(j햇)이라 표현합니다. 3차원 공간상의 단위벡터는 e₁ = (1, 0, 0), e₂ = (0, 1, 0), e₃ = (0, 0, 1) 입니다. 선형결합(linear combination)일차결합이라고도 불리는 선형결합을 설명하겠습니다. 우선 위키백과에 적혀있는 설명을 그대로 복사붙여넣기 해볼게요 선형 결합(線型 結合, linear combination) 또는 일차 결합(一次 結合)은 수학에서 각 항에 상..
-
[JAVA] 람다(Lambda)와 함수형 인터페이스(FunctionalInterface)자바 2022. 10. 12. 21:57
1. 람다(Lambda) 무엇일까 1-1 람다란? 람다 표현식은 메서드로 전달할 수 있는 익명 함수를 단순화한 것이라고 할 수 있다. 람다 표현식에는 이름은 없지만, 파라미터, 함수 본문, 반환 타입, 발생할 수 있는 예외 리스트는 가질 수 있다. (int a, int b) -> a + b 람다 파라미터 : 함수나 메서드의 파라미터에 해당한다. 화살표 : 화살표(->)는 람다의 파라미터와 바디를 구분한다. 람다 바디 : 함수나 메서드의 바디에 해당한다. 1-2 람다의 특징 익명 : 보통 메서드와 달리 이름이 없으므로 익명이라 표현한다. 함수 : 람다는 함수처럼 특정 클래스에 종속되지 않는다. 전달 : 람다 표현식을 메서드 파라미터에 전달하거나 변수에 저장할 수 있다. 간결성 : 익명 클래스처럼 자질구레한..
-
AOP(Aspect-Oriented Programming)란? - 스프링 AOP와 프록시스프링 2022. 9. 7. 15:30
안녕하세요! 이번 포스트에서는 AOP의 개념과 스프링의 AOP 방식에 대해서 작성해보겠습니다. AOP란? AOP는 흔히 스프링의 3대 프로그래밍 모델(DI, AOP, PSA) 중 하나로 알려져있으며 Aspect-Oriented Programming 약자입니다. 이걸 그대로 번역하면 관점 지향 프로그래밍입니다. 그럼 관점(Ascpect)란 무엇일까요?! 어플리케이션 코드에서는 로깅, 보안, 트랜잭션 등 비즈니스 로직과는 상관없이 반복적으로 등장하는 부가적은 코드들이 존재합니다. 객체지향적으로 잘 설계된 코드들도 이런 부가적인 코드들을 완벽히 독립시키기에는 부족한 부분이 있었습니다. 이런 부가기능들을 어떻게 모듈화할 것인지 생각해온 사람들은 기존의 전통적인 객체지향 설계 패러다임으로는 한계가 있다고 생각했었..
-
JWT란? JWT의 구조와 인증 과정카테고리 없음 2022. 8. 28. 18:54
1. JWT란? 클라이언트가 서버의 특정 리소스를 사용하기 위해서는 사용자 인증을 해야합니다. 사용자 인증방식에는 대표적으로 쿠키, 세션, 토큰방식이 있고 오늘 설명드릴 JWT(JSON Web Token)는 토큰 인증 방식에서 제일 많이 알려진 인증 방식 중 하나입니다. JWT는 이름 그대로 JSON으로 형태로 된 토큰이며 {header}.{payload}.{signature} 의 구조로 구성되어있습니다. 지금부터 JWT 구조를 하나하나 살펴보겠습니다. [JWT의 예] Authorization: Bearer eyJraWQiOjEsImFsZyI6IkhTMjU2IiwidHlwIjoiSldUIn0.eyJzdWIiOiJ1c2VybmFtZSIsImlhdCI6MTUxNjIzOTAyMiwiZXhwIjoxNTI2MjM..
-
[MySQL] 인덱스(Index)란? - 인덱스 생성 방법과 주의 사항데이터베이스 2022. 8. 11. 18:03
1. 인덱스란 무엇인가 인덱스(Index)란 데이터베이스에 저장된 데이터를 빠르고 효율적으로 찾고자 만들어진 데이터 구조입니다. 인덱스를 직관적으로 이해하기 가장 쉬운 방법은 책을 예로 드는 것입니다. 예를 들어 천만건의 데이터로 구성된 책이 하나 있고 그 안에서 특정 단어를 찾아야한다면 어떻게 해야할까요 책의 첫 장부터 훑어서 찾아보는 방법도 있겠지만 책의 두께가 두꺼워질 수록 검색할 분량이 기하급수적으로 늘어나면서 검색 속도가 급격히 느려질 것입니다. 그래서 아마 대부분의 사람들은 책 맨 뒷장에 를 볼 것입니다. 가나다 순서로 정렬된 는 그 옆에 단어가 위치한 페이지 번호가 적혀있어서 그 페이지를 펼치면 원하는 데이터를 바로 찾을 수 있을 것입니다. '폭포수' 라는 단어는 101페이지에 있고 '프로그..
-
[SQL] INNER JOIN과 OUTER JOIN에 대해서 알아보자!데이터베이스 2022. 8. 5. 11:26
조인이란? 조인(JOIN)이란 두 개 이상의 테이블으 서로 묶어서 하나의 결과 집합(테이블)을 만들어 내는 것을 말합니다. 1. 내부조인(INNER JOIN) 1-1. 내부조인(Inner Join) INNER JOIN은 조인 중에서 가장 많이 사용되는 조인입니다. 보통 JOIN이라하면 INNER JOIN을 지칭하는 것입니다. INNER JOIN은 조건을 사용하여 두 테이블의 레코드를 결합합니다. 예제 테이블) 각 아이가 하나의 장난감만을 가지고 있다. 일대일 관계이며 toy_id가 참조키 boys toys boy_id boy toy_id toy_id toy 1 Davey 3 1 hula hoop 2 Bobby 5 2 balsa gilder 3 Beaver 2 3 toy soldiers 4 Richie 1..
-
[redis] Redis 서버 Master/Slave 설정하기 (windows10)데이터베이스 2022. 8. 4. 11:55
redis는 마스터/슬레이브 형태의 복제 모델을 제공합니다. 이를 통해서 마스터의 변경이 슬레이브로 전파됩니다. 한 대의 슬레이브는 오직 하나의 마스터만 가질 수 있습니다. redis의 마스터/슬레이브 설정은 정말 간단합니다! 1. Master / Slave 설정 우선 redis 설치 폴더에서 master 폴더와 slave1, slave2 폴더를 각 각 생성해줍니다. 이 폴더들에는 rdb파일과 aof파일을 저장할 것입니다. C:\Task\tools\redis-3.0.504 Aug 3 20:15 master/ Aug 3 20:15 slave1/ Aug 3 20:15 slave2/ Jul 16 22:34 Logs/ Aug 3 19:59 redis.windows.conf Aug 3 17:41 redis.win..
-
[redis] RDB 저장 실패시에도 write 명령 허용하기데이터베이스 2022. 8. 3. 18:00
Redis 기본설정상 RDB 저장이 비정상적으로 종료가 되면 모든 Write 명령은 동작하지 않습니다. 127.0.0.1:6379> set kim "1234" MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error. RDB 저장 실패시에도 Write를 허용하는 2가지 방법이 있습니다. 1. 명령어 127.0.0.1:6379> config set stop-writes-on-bgsave-error no OK ..