프록시(Proxy) 패턴은 어떤 객체에 대한 접근을 제어하는 대리자 객체를 제공하는 구조적 디자인 패턴입니다. 프록시 객체는 실제 객체의 대리 역할을 하며, 클라이언트가 실제 객체에 접근할 때 이를 대신 처리하거나 중간 작업을 수행합니다. 프록시 패턴은 주로 객체 접근
연속된 메모리 블록에 요소를 저장하는 자료구조입니다.각 요소는 인덱스를 통해 직접 접근할 수 있어, 고정된 크기의 데이터를 다룰 때 효율적입니다.요소(노드)가 포인터로 연결된 자료구조입니다.각 노드는 데이터를 저장하는 공간과 다음 노드를 가리키는 포인터로 구성됩니다.노
호환되지 않는 인터페이스를 가진 클래스들이 함께 동작할 수 있도록 중간에 어댑터 역할을 하는 클래스를 두는 구조적 디자인 패턴입니다. 어댑터는 기존 클래스를 수정하지 않고 다른 인터페이스와 호환되도록 도와주기 때문에 기존 코드에 대한 수정이 필요 없고, 새로운 코드와
클래스의 인스턴스가 오직 하나만 생성되도록 보장하며, 전역 접근이 가능하게 하는 디자인 패턴입니다. 주로 글로벌 상태를 유지해야 하거나, 자원을 공유해야 하는 경우에 유용합니다. 대표적인 예로 로그 파일 관리 객체, 설정 객체, 데이터베이스 연결 객체 등이 있습니다.자
복잡한 객체를 단계적으로 생성하는 방법을 제공하는 생성 패턴입니다. 이 패턴은 객체 생성 과정에서의 세부 설정이나 조립이 필요한 경우에 유용하며, 다양한 속성들을 선택적으로 설정하여 객체를 만들 수 있게 합니다. 특히, 복잡한 객체 생성 시 코드를 더 읽기 쉽게 만들고
추상화 팩토리 패턴(Abstract Factory Pattern)은 관련된 객체들을 그룹으로 묶어 일관된 방식으로 생성할 수 있도록 하는 디자인 패턴입니다. 여러 종류의 객체를 묶어서 생성할 때 유용하며, 객체의 구체적인 클래스가 아닌 추상적인 인터페이스에 의존하게 하
팩토리 메서드 패턴은 객체 생성 코드를 서브클래스에서 정의하도록 위임하는 디자인 패턴입니다. 팩토리 메서드는 구체적인 클래스 대신 부모 클래스 또는 인터페이스에서 정의한 메서드를 통해 객체를 생성하게 하여, 객체 생성의 책임을 서브클래스가 지도록 합니다.이 패턴은 상속
팩토리 디자인 패턴은 객체 생성 로직을 캡슐화하여 코드의 유연성과 확장성을 높이는 디자인 패턴입니다. 이를 통해 객체 생성에 관한 로직을 클라이언트 코드에서 분리하고, 객체 생성 방식을 재정의하거나 확장할 수 있는 구조를 제공합니다.팩토리 패턴의 핵심 아이디어는 객체
사용하는 기기 정보 Rasberry pi5 ubuntu 23.10 fastapi 코드 만들기 프로젝트세팅 main.py 작성 dockerfile 작성 docker hub 배포 minikube 설치 minikube 시작 deployment 만들기 fastap
특정 객체가 null이 아님을 확인합니다. 객체가 null인지 확인합니다.두 값이 동일한지 확인합니다.주어진 조건이 true또는 false인지 확인합니다.두 배열이 동일한지 비교합니다. 특정 조건을 만족하는지를 확인할 때 사용합니다.
java 17Spring 3.3.0Postgresql 15.5비밀번호 인코더 빈 생성RESTFUL API에서 불필요하여 CSRF를 비활성화예외 처리 구성세션을 STATELESS로 설정JWT 필터 추가인증 없이 접근할 수 있는 엔드포인트 설정전체 코드
블로그나 인프런에서 Spring security를 찾아보면 Spring 2버전의 글과 영상이 대부분입니다. 그래서 제가 한번 3버전의 글을 올려 보고자 합니다. ㅎㅎ스프링 프레임워크 기반의 애플리케이션에서 인증(Authentication)과 권한 부여(Authoriza
인터셉터란 서버로 들어온 Request 객체를 컨트롤러의 핸들러에 오기 전에 가로채서 원하는 작업을 할 수 있도록 하는 기능이다. 주로 로그인 여부나 권한 등의 여부를 판단하는 기능에 활용 된다. 작동 과정 url을 통해 서버에 request 객체 전송 Dispatc
@Entity 어노테이션은 클래스가 JPA 엔티티임을 명시합니다. 이 어노테이션이 선언된 클래스는 데이터베이스 테이블에 매핑됩니다.@Table 어노테이션은 엔티티 클래스가 매핑될 테이블의 이름을 지정합니다. 생략할 경우 클래스 이름이 테이블 이름으로 사용됩니다.@Id
JPA에서 영속성 컨텍스트(Persistence Context)는 엔티티를 관리하는 환경을 의미합니다. 영속성 컨텍스트는 엔티티 매니저(EntityManager)에 의해 관리되며, 엔티티 매니저는 엔티티의 생명 주기를 관리하고 데이터베이스 작업을 수행하는 데 사용됩니다
https://www.daleseo.com/lombok-popular-annotations/ https://roopredev.tistory.com/14
Java에서 의존성 주입(Dependency Injection)과 관련된 어노테이션입니다. private SomeDependency someDependency;여기서 Spring은 SomeDependency 타입의 빈을 찾아 이 필드에 주입합니다.이 어노테이션은 Spr
DB의 마이그레이션을 형상관리할 수 있도록 도와주는 java의 라이브러리gradle 설정application.ymlentity/Region.javasql 파일 위치파일명 규칙init sql 스크립트 작성Spring boot 실행 >> 테이블 확인
이번에 대용량 csv파일을 조회해야 할 일이 생겼다. pandas로 하기에 용량이 매우 컸다. 단기 프로젝트로 간단하게 해결해 볼 계획이다. 방식은 spark thrift를 띄워 hive에 external table을 만들고 spark에서 제공하는 ansi sql을
Airflow를 세팅하고 CPU 점유율이 유독 높은 문제가 발생 하였다.이유는 다음과 같다.airflow.cfg를 보면 아래 3개의 항목이 있다.scheduler_heartbeat_sec이 녀석은 스케줄러가 새로운 작업을 위해 dag을 실행하는 빈도를 의미한다. 기본은