이해 목적 실무에서 사용하다가 요구사항으로 인한 변경, 갑자기 터지는 이슈를 내부 구조를 알아야 대응하기 쉬워집니다.그래서 옵셔널 한 이 시큐리티를 깊게를 할 필요는 없지만 내부 구조 정도는 알아야 한다고 생각합니다.이 글을 외우지 말고 간단한 이해만 시켜보도록 하겠습니다. 아키텍처 크게 본 구조 공식문서에 있는 그대로 설명할 것입니다. https://docs.spring.io/spring-security/reference/servlet/architecture.html#servlet-exceptiontranslationfilter Architecture :: Spring SecurityThe Security Filters are inserted into the FilterChainProxy w..
개발환경 OS : MacOSNode : v20.15.0 (LTS)npm : v10.7.0npx : v10.7.0nuxt : 3.12.3Spring Boot : 3.1.8JAVA17 1. 사전 작업 (Node설치하기) Node 버전이 18.0.0 이상이면 2번으로 바로 넘어가 주시면 됩니다. NodeJs 설치하기아래 홈페이지에 접속해 node 18.0.0 버전 이상으로 설치해주시면 됩니다.https://nodejs.org/en/ : NodeJs 설치 홈페이지 Node.js — Run JavaScript EverywhereNode.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.nodejs.org 설치 완료 확인하기설치가..
개발환경 OS : Window11NginX : Windows-1.24.0node.js : v18.16.0Express.js : 4.19.2 들어가기 전 NginX가 설치되어 있지 않으면 아래의 글을 읽어서 설치해 주시면 됩니다.https://nginx.org/ nginx news2024-04-23nginx-1.26.0 stable version has been released, incorporating new features and bug fixes from the 1.25.x mainline branch — including experimental HTTP/3 support, HTTP/2 on a per-server basis, virtual servers in the stream modul..
들어가기 전 설명 현재 구현한 코드들은 GitHub 에 있습니다. 글을 보다가 헷갈리시면 소스코드로 참고 해주시기 바랍니다.또한, JAVA console으로 구현하였습니다. 게임 규칙 게임 딜러와 플레이어 1대1로 진행합니다.딜러를 포함한 플레이어에게 카드 두 장을 나누어주고, 딜러의 카드 한 장은 게이머에게 보이지 않습니다.딜러는 카드의 합이 16 이하면 무조건 한 장을 더 받아야 하고, 17 이상의 경우에는 멈추어야 합니다.딜러의 카드와 합이 같으면 비깁니다. 게이머는 먼저 받은 카드 두 장의 합이 21에 못 미치면 한 장씩 더 받을 수 있고, 멈출 수도 있습니다.게이머는 카드의 합이 딜러보다 먼저 21이 되거나 딜러보다 21에 가깝게 되면 이기고, 카드를 더 받았는데 21을 초과하면 집니다. 카..
들어가기 전 설명 현재 구현한 코드들은 GitHub 에 있습니다. 글을 보다가 헷갈리시면 소스코드로 참고 해주시기 바랍니다.또한, JAVA console으로 구현하였습니다. 게임 규칙 게임 딜러와 플레이어 1대1로 진행합니다.딜러를 포함한 플레이어에게 카드 두 장을 나누어주고, 딜러의 카드 한 장은 게이머에게 보이지 않습니다.딜러는 카드의 합이 16 이하면 무조건 한 장을 더 받아야 하고, 17 이상의 경우에는 멈추어야 합니다.딜러의 카드와 합이 같으면 비깁니다. 게이머는 먼저 받은 카드 두 장의 합이 21에 못 미치면 한 장씩 더 받을 수 있고, 멈출 수도 있습니다.게이머는 카드의 합이 딜러보다 먼저 21이 되거나 딜러보다 21에 가깝게 되면 이기고, 카드를 더 받았는데 21을 초과하면 집니다. 카..
들어가기 전 설명 현재 구현한 코드들은 GitHub 에 있습니다. 글을 보다가 헷갈리시면 소스코드로 참고 해주시기 바랍니다.또한, JAVA console으로 구현하였습니다. 게임 규칙 게임 딜러와 플레이어 1대1로 진행합니다.딜러를 포함한 플레이어에게 카드 두 장을 나누어주고, 딜러의 카드 한 장은 게이머에게 보이지 않습니다.딜러는 카드의 합이 16 이하면 무조건 한 장을 더 받아야 하고, 17 이상의 경우에는 멈추어야 합니다.딜러의 카드와 합이 같으면 비깁니다. 게이머는 먼저 받은 카드 두 장의 합이 21에 못 미치면 한 장씩 더 받을 수 있고, 멈출 수도 있습니다.게이머는 카드의 합이 딜러보다 먼저 21이 되거나 딜러보다 21에 가깝게 되면 이기고, 카드를 더 받았는데 21을 초과하면 집니다. 카..
들어가기 전 설명 현재 구현한 코드들은 GitHub 에 있습니다. 글을 보다가 헷갈리시면 소스코드로 참고 해주시기 바랍니다.또한, JAVA console으로 구현하였습니다. 게임 규칙 게임 딜러와 플레이어 1대1로 진행합니다.딜러를 포함한 플레이어에게 카드 두 장을 나누어주고, 딜러의 카드 한 장은 게이머에게 보이지 않습니다.딜러는 카드의 합이 16 이하면 무조건 한 장을 더 받아야 하고, 17 이상의 경우에는 멈추어야 합니다.딜러의 카드와 합이 같으면 비깁니다. 게이머는 먼저 받은 카드 두 장의 합이 21에 못 미치면 한 장씩 더 받을 수 있고, 멈출 수도 있습니다.게이머는 카드의 합이 딜러보다 먼저 21이 되거나 딜러보다 21에 가깝게 되면 이기고, 카드를 더 받았는데 21을 초과하면 집니다. 카..
프록시 패턴이란? 대상 원본 객체를 대리(대신) 처리하게 함으로써 로직의 흐름을 제어하는 구조패턴입니다.이 프록시를 통해서 크게 2가지인 접근 제어 (권한에 따른 접근 차단, 캐싱, 지연 로딩) , 부가 기능 추가 일을 할 수 있습니다. 프록시 패턴 vs 데코레이션 패턴 두 패턴 모두 둘 다 프록시를 사용한다는 공통점이 있지만 이 둘의 의도(intent)에 따라서 구분됩니다.이번 배울 프록시 패턴은 접근 제어가 목적이며 데코레이터 새로운 기능, 부가 기능 추가가 목적입니다. 프록시 패턴의 구성요소 프록시 패턴은 다음과 같은 구성요소로 이루어져 있습니다. 실제 주체 (Real Subject) : 원본 대상 객체주체 (Subject) : Proxy와 RealSubject를 하나로 묶는 인터페이스프..
전략 패턴이란? 객체가 할 수 있는 행위들 각각을 전략으로 만들어 놓고 사용하며, 동적으로 전략 수정이 가능한 패턴입니다.풀어서 설명한다면, 실행(런타임) 중에 알고리즘 전략을 선택하여 객체 동작을 실시간으로 바뀌도록 할 수 있는 패턴입니다. 전략 패턴 vs 템플릿 메서드 패턴 두 패턴 모두 알고리즘을 실행(런타임) 중에 알고리즘을 동적으로 적용한다는 공통점이 있지만이번 배울 전략 패턴은 합성(composition)을 통해 해결하고 템플릿 메서드 패턴은 상속(inheritance)을 통해 해결합니다. 이해하기 쉽게 말하면 전략 패턴은 Interface를 의존하여 OCP인 개방 폐쇄 원칙을 잘 지키며 앞으로도 많이 사용될 디자인 패턴이지만 템플릿 메서드 패턴은 부모 클래스를 상속받아 부모 클래스의 코드..
템플릿 메서드 패턴이란? 템플릿 메서드 패턴을 객체지향 디자인 패턴 중 하나로, 기능의 뼈대(템플릿)와 실제 구현을 분리하는 패턴입니다.즉, 상위 클래스(추상 클래스)에서 알고리즘 골격을 정의하고 하위 클래스 (상속 받은 클래스)에서는 알고리즘의 특정 단계를 재정의할 수 있는 것입니다. 아래 [그림1] 은 템플릿 메서드를 보여주고자 하였고 왼쪽은 기본틀이며, 오른쪽은 제가 설명하기 위해 예시로 만든 틀입니다. 들어가기 전 단어 알기 훅 메서드 (hook method)추상 클래스에서 추상 메서드로 선언하며, 기본 구현만 제공하는 메서드입니다.이제 하위 (구현, 자식) 클래스에서 추상 메서드를 오버라이딩하여 사용할 수 있습니다. 템플릿 메서드 특징 템플릿 메서드 패턴은 다음과 같은 특징을 가..
- Total
- Today
- Yesterday
- AJAX
- 템플릿
- Spring Security
- Front
- Fetch
- DBeaver
- 비동기
- 프론트
- java
- 프로세스
- JavaScript
- Cors
- 오라클
- 데이터 베이스
- 개발블로그
- 네트워크
- aws
- 디자인패턴
- spring
- 자바스크립트
- 개발
- 개발환경
- git
- 코딩테스트
- Mac
- 개발자
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |