spring
-
Spring Cloud Data FlowSpring 2024. 10. 2. 15:09
공식 문서 사이트https://dataflow.spring.io/docs/installation/https://docs.spring.io/spring-cloud-task/docs/current/reference/html/#preface수동 다운로드 사이트작성일 기준으로 최신 버전은 2.11.4Spring Cloud Dataflow ServerSpring Cloud Skipper설명Spring Cloud SkipperSpring Cloud Data Flow와 함께 사용되는 배포 관리 도구로, 애플리케이션 배포의 관리 및 업그레이드를 간편하게 수행할 수 있도록 도와주며, Skipper는 Spring Cloud Data Flow에서 스트림 및 작업(Tasks)을 구성하고 실행하는데 있어 버전 관리, 롤백, 및..
-
Spring과 Builder PatternSpring 2023. 4. 5. 14:54
빌더 패턴 이번 주제는 생성자 패턴 중에서 제일 유명하고 가장 많이 쓰이는 패턴인 빌더 패턴입니다. 빌더 패턴에 장점으론 유연한 객체 생성 과정 생성된 객체의 불편성 유지 가독성 높은 코드 작성 등이 있습니다. 빌더 패턴과 많이들 이야기 되는게 점층적 생성자 패턴과 자바빈즈 패턴이 이야기 됩니다. 여기서 점층적 생성자 패턴을 설명 드리면 생성자를 오버로딩하여 파라미터 개수를 늘려가면서 객체를 초기화 하는 방식 입니다. public class Person { private String name; private int age; private String address; private String phone; public Person(String name, int age) { this(name, age, ""..
-
Spring과 Abstract Factory PatternSpring 2023. 2. 1. 13:57
추상 팩토리 이번 주제는 프로세스 로직을 추상 팩토리 패턴을 적용하여 Spring에서 어떻게 사용할 수 있을지에 대해서 작성하려고 합니다. 추상 팩토리 패턴이란? 개인적인 견해로는 추상 팩토리 패턴은 팩토리 메서드 패턴보다 결합도를 낮추고 응집도를 올려주는 패턴이라고 생각합니다. 왜 결합도를 낮추고 응집도를 높히는지 알려면 먼저 팩토리 메서드 패턴 구조를 알아야 하는데 이 부분은 이전 글인 https://devssul.tistory.com/26를 참고하시면 되겠습니다. 팩토리 메서드는 프로세스 구현 객체를 반환 받기 위해 추상 클래스(혹은 부모 클래스)와 상속 받는 구현체 구조를 가지게 되고 반환 받은 프로세스 구현 객체를 추상 클래스(혹은 부모 클래스)에서 제어하기 때문에 추상 클래스(혹은 부모 클래스..
-
Spring과 Factory PatternSpring 2023. 1. 19. 14:29
단순 팩토리 이번 글은 Spring에서 단순 팩토리 패턴을 사용하는 글을 작성하려고 합니다. 단순 팩토리에 대한 설명은 팩토리 비교 (refactoring.guru)에서 단순 팩토리 부분을 참고하시면 되겠습니다. 단순 팩토리는 정말 단순하게 개발자가 요구하는 객체들이 모여져 있는 클래스가 존재하고 필요 할 때마다 해당 클래스에서 반환 받는 형태를 가지게 됩니다. 이번 주제는 정말 단순해서 바로 본론으로 들어가도록 하겠습니다. 이번 예제는 이전 글인 팩토리 메서드 패턴에 단순 팩토리를 적용하는 예로 들겠습니다. 먼저 이전 글인 팩토리 메서드 패턴에는 몇 가지 문제(?)가 있습니다. 바로 의존성에 대한 문제 입니다. 프로세스 로직 담당 클래스는 정보 저장을 위해 Spring Bean에 있는 정보 저장 담당 ..
-
Spring과 Factory Method PatternSpring 2023. 1. 18. 16:26
팩토리 메서드 안녕하세요 글쓴이 입니다. 이번 주제는 디자인 패턴에 대해서 작성하려고 합니다. 디자인 패턴을 학습하긴 했는데 Spring에 디자인 패턴을 적목 시키기가 애매한 경우가 많습니다. 적목 시키기 애매하다고 생각하는 개인적인 견해로는 MVC 패턴 Spring을 사용하면 MVC 패턴에 의한 구조적 설계가 바탕이 되는데 이 부분에서 어느 정도의 강제성이 부여. Bean 활용을 위한 객체의 싱글톤 Spring의 강점인 Bean 객체는 기본이 싱글톤 객체이기 때문에 객체에 대한 핸들링이 어느 정도 강제성 부여. 이지 않을까 합니다. 물론 하고자 한다면 할 수 있고 혹은 하고 계시고 있다고 생각합니다. 그래서 이 글의 목적은 하고자 하시려는 분들에게 조금이나마 도움을 그리고 하고 계신 분들한텐 이런 방식..
-
Spring boot + MongoDB Multi-Document TransactionsDB 2022. 7. 22. 17:21
MongoDB 4.0 이전 버전에선 Single-Document Transactions만을 지원하였습니다. RDB는 데이터들을 정규화해서 서로 다른 테이블에 저장하는 반면 MongoDB는 정규화를 거치지 않고 하나의 Document에 몽땅 저장 하기 때문에 MongoDB의 지향점을 생각하면 Single-Document Transactions이면 충분했겠지만 세상은 우리의 뜻(?)대로만 살 수 없기에 4.0 버전부터 Multi-Document Transactions이 지원되게 되었습니다. 여담이지만 4.0 이전 버전에서 Multi-Document Transactions을 위해선 2-Phase-Commits과 같은 방법을 개발자가 직접 처리해야 했습니다. 그럼 버전별로 달라진 점을 간략 설명하자면 v4.0 ..
-
Spring @Sevice 클래스 유연하게 써보기Spring 2022. 7. 15. 08:16
Spring Multi Datasource(다중 데이터소스)를 활용한 Service 구현 :: 신나게의 개발썰 Spring Multi Datasource(다중 데이터소스)를 활용한 Service 구현-2 :: 신나게의 개발썰 Service 관련 작성하였지만 개인적으로 아쉬운게 있어 추가 글(또 작성하네..)을 작성하려고 합니다.(이전 글 홍보 양해 부탁드립니다^^) Spring Framework를 활용하면 MVC 패턴을 사용하게 됩니다. MVC 패턴에 의거(?)해서 @Controller 어노테이션으로 선언된 Controller 클래스 생성 비지니스 로직 처리를 위해 @Service 어노테이션으로 선언된 Service 클래스 생성 여기서 이번 글의 목적은 저 Servie 클래스를 유연하게 써보기 위한 목적..
-
Spring Mybatis 상속Spring 2022. 5. 30. 09:52
Spring의 Multi Datasource 관련해서 작성 했던 docker-compose으로 Postgresql Replication 구성 :: 신나게의 개발썰 Spring Multi Datasource(다중 데이터소스) 설정 :: 신나게의 개발썰 Spring Multi Datasource(다중 데이터소스)를 활용한 Service 구현 :: 신나게의 개발썰 Spring Multi Datasource(다중 데이터소스)를 활용한 Service 구현-2 :: 신나게의 개발썰 위 게시물들로 Multi Datasource는 마무리 짓으려고 합니다. 마무리 하기 전에 번외(?)편으로 Mybatis 관련 게시물을 작성하고 끝맺음으로 하려고 합니다. Spring 개발자라면 Mybatis는 아무래도 빼놓을 수 없고 많..