Home
keencho's blog
Cancel

리액트에서 폴더 구조대로 라우팅하기 (feat. Vite)

Next js 처럼 라우팅하기 Next js는 리액트에서 SSR을 쉽게 구현할수 있게 도와주는 라이브러리 입니다. Next의 파일 시스템을 기반으로한 라우팅 을 기본으로 하고 있습니다. (참조) 오늘은 Next 없이 Next와 같은 라우팅을 구현해보고자 합니다. CSR로 구현하기? 리액트는 lazy 와 Suspense API로 동적 로딩을 지원하고 ...

어댑터 패턴 (Adapter Pattern)

어댑터 패턴 어댑터 패턴은 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 변환하는 패턴으로, 호환성이 없는 인터페이스 때문에 함께 동작할 수 없는 클래스들이 함께 동작하도록 해주는 패턴입니다. 구조 객체 어댑터 클라이언트는 비즈니스 로직을 포함하고 있는 클래스입니다. 클라이언트 인터페이스는 다른 클래스가 클라이언트 코드와 협력...

프로토타입 패턴 (Prototype Pattern)

프로토타입 패턴 프로토타입 패턴은 원형이 되는 인스턴스를 사용해 새롭게 생성할 객체의 종류를 명시하여 새로운 객체가 생성될 시점에 인스턴스의 타입이 결정되도록 하는 패턴입니다. 구조 임의의 인스턴스를 복제하는 메소드를 가진 인터페이스인 Prototype 인터페이스를 생성합니다. 대두분의 경우 이 인터페이스에는 clone() 메소드 하나만 선...

Transaction silently rolled back because it has been marked as rollback-only

이게 왜 저장이 안될까? 서비스를 운영하다가 이 포스팅의 제목과 같이 Transaction silently rolled back because it has been marked as rollback-only 라는 에러 메시지를 받게 되었습니다. 해당 에러의 원인은 금방 찾았으나, 한 서비스가 내부 서비스의 메소드를 try-catch 블록으로 감싸 호출...

커맨드 패턴 (Command Pattern)

커맨드 패턴 커맨드 패턴은 실행될 기능을 객체의 형태로 캡슐화 함으로써 여러 기능을 실행할 수 있는 재사용성이 높은 클래스를 설계하는 패턴 입니다. 이 패턴은 어떤 이벤트가 발생했을 때 실행될 기능이 다양하면서 여러가지 변경이 필요한 경우에 이벤트를 발생시키는 클래스를 변경하지 않고 재사용 할 때 유용합니다. 구조 호출자는 요청을 시작하는 ...

반복자 패턴 (Iterator Pattern)

반복자 패턴 반복자 패턴은 객체지향 프로그래밍에서 반복자를 사용하여 컨테이너를 가로지르며 컨테이너의 요소들에 접근하는 디자인 패턴입니다… 라고 위키에는 나와 있습니다만 한번에 이해되지는 않습니다. String[] stringArray = {"월", "화", "수", "목", "금", "토", "일"}; for (int i = 0; i < str...

옵저버 패턴 (Observer Pattern)

옵저버 패턴 옵저버 패턴은 객체의 상태 변화를 관찰하는 관찰자들, 즉 옵저버의 목록을 객체에 등록하여 상태 변화가 있을 때마다 메스드 등을 통해 객체가 직접 목록의 각 옵저버에게 통지하도록 하는 디자인 패턴입니다. 구조 게시자는 다른 객체들에게 관심 이벤트를 발행합니다. 이 이벤트난 게시자가 상태를 변경하거나 어떤 동작을 실행할 때 발생합니...

싱글턴 패턴 (Singleton Pattern)

싱글턴 패턴 싱글턴 패턴은 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴하는 디자인 유형입니다. 구조 싱글턴 클래스는 자체 클래스의 동일한 인스턴스를 반환하는 getInstance() 라는 정적 메소드를 선언했습니다. 싱글턴의 생성자는 ...

프록시 패턴 (Proxy Pattern)

프록시 패턴 프록시(Proxy) 는 대리자 라는 뜻입니다. 실생활서의 의미처럼 프로그램에서의 프록시도 누군가에게 어떤 일을 대신 시키는 것 이란 의미를 가지고 있습니다. 때때로 우리는 객체에 대한 액세스를 제어하는 기능을 필요합니다. 예를 들어 무겁고 많은 자원을 필요로 하는 클래스의 한두가지 메소드만 사용해야 하더라도 생성자로 전체 클래스를 인스턴...

AWS를 사용해 무중단 배포 자동화 환경 구축하기 - 4. 어플리케이션 구축 및 로드밸런서 적용

AWS를 사용해 무중단 배포 자동화 환경 구축하기 시리즈 개요 VPC와 기본 리소스 VPC와 기본 리소스 생성하기 어플리케이션 구축 및 로드밸런서 적용 AWS 리소스 세팅 CodeDeploy 연동 / 마무리 어플리케이션 구축 및 로드밸런서 적용 이번 포스팅에서는 간단한 Spring Boot 어플리케이션을 만들어 ec2 인스턴...