개발 주머니쥐🐁

[Spring_Security] 애플리케이션 수준의 보안을 책임지는 스프링 시큐리티의 각 구성요소와 맞춤형 빈 및 설정

인증 / 인가의 정의 및 취약성 🐀 인증, 인가란 인증Authentication이란 애플리케이션이 사용자를 식별하는 방법이다. 즉, 서버 리소스의 호출자를 식별하는 프로세스를 말한다. 인가Authorization란 식별된 호출자가 요청된 리소스에 Access할 권한이 있는지 결정하는 프로세스를 말한다. ☄️ 인증 취약성(Vulnera...

[Docker] 동일한 환경 구성을 위한 컨테이너와, 이를 위한 컨테이너 구축/관리 도구 도커의 기본 명령어

특정 버전의 실행환경 🐀 똑같은 개발환경을 갖는 것은 상당한 가치가 있다 로컬환경, 개발환경에만 애플리케이션이 동작하는데 필요한 버전의 프로그램이 설치되어 있는 채로, 해당 애플리케이션이 호스트되어야 하는 서버의 원격시스템에 배포할 경우, 해당 원격시스템에는 동일한 버전의 프로그램이 없어 동작하지 않을 수 있다. 특정 버전의 실행환경을...

[Spring] 빈을 생명주기 콜백을 지원하는 스프링 프레임워크와 빈의 유효범위 '빈 스코프' 및 '웹 스코프'

빈 생명주기 콜백 🐀 스프링 빈이 생성되거나 죽기 직전에 스프링 프레임워크가 빈 안에 있는 메서드를 호출해 줄 수 있는 기능을 말한다 즉, 스프링 빈🥔이 생성되고, 초기화 될 때 또는 빈이 사라지기 직전에 안전하게 종료할 수 있는 메서드를 스프링 프레임워크가 호출해 줄 수 있다. Database Connection Pool🏖️와 ...

[Spring] 웹 애플리케이션에서 사용하는 싱글톤과 이를 기반하여 객체를 관리하는 스프링 컨테이너 및 무상태성 (stateless)

웹 애플리케이션과 싱글톤 🐀 웹 애플리케이션에서 싱글톤이 많이 사용되는 이유 웹 애플리케이션은 보통 여러 고객이 동시에 요청을 할 수 있는 가능성이 있다. 요청이 올 때마다, 새로운 객체를 생성한다면 메모리 낭비가 심하게 된다. 예를 들어, 고객 트래픽이 초당 200이 나오면 초당 200개의 객체가 생성되고 소멸된다. 싱글톤 패턴으로 ...

[JSP] 서버 사이드 렌더링 방식인 JSP의 기본 문법과 더 쉽게 사용하기 위한 EL & JSTL

서버 사이드 렌더링 vs 클라이언트 사이드 렌더링 🐀 SSR은 서버가 요청된 페이지의 전체 HTML 출력을 생성하고, 클라이언트에 전달하는 방식이다 서버는 사용자의 요청에 응답하기 위해 페이지를 동적으로 생성하며, 클라이언트에서 실행되는 브라우저에 의해 페이지는 단순히 표시될 뿐이다. 따라서, 사용자가 보는 페이지는 서버에서 처리된 결과...

[Sql튜닝] 옵티마이저에게 실행 계획을 제안하는 오라클 패키지 함수와 오라클 아키텍처 동작 원리에 따른 퍼포먼스

DBMS, ORACLE 🐀 Oracle은 database 관리(저장, 추출, 삭제, 변경) 시스템이다 🍞 Oracle database는 데이터 파일들을 가지고 있으며, 이 파일들에 데이터가 저장된다. 즉, 어딘가에 데이터 파일을 저장해놓고, 사용하는 시스템을 말한다. 데이터 저장 단위는 물리적, 논리적 단위로 나눌 수 있는데, 물리적 ...

[js] 자바스크립트의 일급함수의 성질에 기반한 콜백함수의 비동기 처리 및 Promise, async / await

자바스크립트의 특이한 일급함수로써의 성질 🐀 함수가 변수처럼 할당될 수 있다 값처럼 사용할 수 있는 객체를 *일급객체라 한다. 자바스크립트의 함수는 호출가능한 객체로써, 피연산자로 사용될 때 함수 리터럴(값)로 해석된다. 즉, 하나의 값처럼 동작하는 함수를 다른 함수의 인자(args)로써 전달할 수 있고, 이를 파라미터로 받을 수 있다....

[js] 동적인 이벤트를 다루는 자바스크립트의 호이스팅 및 개선된 문법

인터프리터 언어, JavaScript 🐀 웹페이지의 보조적 기능을 수행하기 위해 브라우저에서 동작하는 경량 프로그래밍 언어로 시작했다. 📕 인터프리터 언어란 런타임에 매번 한줄씩 바이트코드로 변환 후 실행하는 방식으로 동작한다. 따라서 실행파일을 생성하지 않고, 때문에 코드 실행속도가 느리다. 하지만, 코드를 한줄씩 실행하고 결과를 즉시...