일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- spring cloud
- docker
- Redis Sentinel
- argo cd
- vue.js
- mybatis
- Airflow
- Selenium
- coalesce
- cassandra
- WebLogic
- spring boot
- netflix oss
- MySQL
- grafana
- docker compose mysql
- Docker Compose
- RabbitMQ
- ChannelPipeline
- JPA
- KAFKA
- jmeter
- spring boot redis
- redis
- Spring Open Feign
- Hibernate
- Netty
- QueryDSL
- docker-compose
- weblogic 10
- Today
- Total
목록전체 글 (410)
IT.FARMER
추상 팩토리 (abstract factory Pattern ) 추상 팩토리 패턴은 객체 생성시 구체적인 특정클레스에 의존하지 않고 추상화된 객체를 의존함으로 결합도를 낮춰주고 기존 코드를 수정하지 않고(최소한의 수정으로) 상황에 따라 필요한 객체를 생성하여 사용 할 수 있다. 특징 새로운 모듈이나 기능이 추가되었을대 기존에 작성하였던 코드를 손대거나 수정하지 않고 추상팩토리로 상속받아 모듈을 구현함으로 새로운 기능을 추가할수있다. 추상화한 객체를 의존함으로 결합도가 높은 클레스의 결합도를 낮춰주고 느슨하게 만들어 준다. 추상팩토리패턴은 메서드팩토리패턴과 전혀 성격이 다르다. 또한 추상팩토리 패턴이 메소드팩토리 패턴보다 상위기념이거나 호환할수있는 개념이 아니라는것을 알아두고 가자 팩토리 메소드 패턴 인스턴..
팩토리 메소드 패턴(Factory method pattern / Factory pattern) 생성패턴에 속한 팩토리 메소드패턴(Factory Method pattern)은 보통 팩토리 패턴(Factory Pattern )으로도 알려져 있다. 여러 가지 샘플과 개념들이 많다보니 조금 햇갈릴수있는데 여기서 개념을 확실하게 하고 가야한다. 성패턴에 속한 팩토리 패턴엔 3가지가 있다. 심플팩토리 패턴 - 인스턴스화 로직을 클라이온트에 노출시키지 않고 객체를 장성하고 공통인터페이스를 통해 새로 작성된 객체를 참조한다. 팩토리메서드 패턴 - 오브젝트를 생성하기위한 인터페이스를 정의하지만 서브클레스에서 인스턴스화 시킬 클래스를 결정하고 공통인터페이스를 통해 새로 만들어진 오브젝트를 참조하도록 한다. 추상팩토리 패턴..
템플릿 메소드 (Template Method Pattern) 소프트웨어 공학에서 동작상의 알고리즘의 뼈대를 정의하는 디자인패턴이다. 알고리즘의 구조를 변경하지 않고 특정 단계들을 다시 정의 할 수 있게 해준다. - 위키 템플릿 메소드 패턴은 슈퍼클래스에서 처리의 흐름을 제어하며 서브 클래스에서 그 처리의 구체적인 기능을 구현하는 패턴이다. 여러개의 서브클래스에서 공통으로 사용하는 기능은 수퍼클레스에서 구현하고 다른 기능들은 서브클레스에서 구현한다. 전체적인 알고리즘의 구조(작업 플로어가 동일함)는 같으나 세부적인 내용이달라 각 서브클래스마다 다르게 구현해야 할때 사용한다. 예시 (1) : 케릭터 생성 및 최초 듀토리얼 진행 게임케릭터 생성후 최초 튜토리얼 진행시 같은 패턴으로 진행되나 보상받는 아이템이 ..
디자인 패턴은 여러 분류로 그룹화 되어 있으며, 크게 3세가지로 나뉜다. 보통 우리가 알고 있거나 자주 이야기 되는 패턴은 생성패턴, 구조패턴, 행동패턴이며, 그외에도 동시실행 패턴도 있다. UML과 같은 일종의 설계 기법 및 설계방법이며, 소프트웨어 엔지니어링에서 디자인패턴은 소프트웨어 디자인시에 일반적으로 발생되는 문제이대한 일반적인 해결책이다. 디자인 패턴으로 코드를 직접 변환하거나 디자인한다고 해서 해결되는 것은 아니며, 이를 해결하기 위한 설명 혹은 템플릿 이라 생각하면 된다. 사용하는(패턴 화된) 이유 ? 다른 사람이 작성한코드를 보고 이해하는건 쉽지 않다. 이해되지 않는 코드드를 수정하거나 새로운 기능을 추가할때는 의도치 않은 결과나 버그가 발생되곤 한다. 디자인 패턴을 사용하한다면 이는 위..
동기화, 비동기화 & 블로킹/논블로킹을 이야기하다보면 아직도 많이 혼란스럽다. 최근에는 reactive 프로그래밍이라고 하여 프론트에서는 동기/비동기화 관련 글들이 많고 서버에서도 블로킹/논블로킹관련 reactive(리액티브) 글들이 많다. UI에서는 대표적으로 Vue.js 나 React.Js 를 꼽을수있고, 서버쪽에서는. RxJava(RetiveX), Spring Reactor(https://projectreactor.io/) 를 들을수있다. 간단하게 설명하면 Reactive X는 넷플릭스에서 공개한 오픈소스라이브러리 이고, Reactor는 Spring 오픈소팀이 만든 프레임워크 이다. 참고) Advanced Reactive Java 그럼 우리가 흔히 알고있는 async 및 sync 에 대하 먼저 알아..
참신기하다. 분명히 책을 책장에 잘 꽂아 두었다고 생각했는데, 막상 다시 책을 보려고 하면 그책이 없다. 한권으로 되어있는 소설책들은 모두 있는데 이상하게도 여러권으로 되어있는 소설책은 꼭 몇권이 비어있다. 책을 갔다 버리는것도 아닌데도 말이다. 아니면 이사할때 책이 사라졌나?? 그럴리는 없겠지 ㅋㅋㅋ 그나저나 안나카레리나라는 책은 분명히 몇달전에 봤던 책인데 1권이 어디로 사라졌는지 전혀 알 수가 없다. 어디로 갔느냐 나의 책들아~~~ 아이작 아시모프의 파운데이션도 읽다가 말았는데, 집에 보니 2권, 7권만 있다. 나머지 몇권은 본가이있는거 같은데. 도대체 1권은 어디로 사라진걸까 ??
Sring boot jpa log 설정 Spring boot 에서 jpa, hibernate log를 보기위한 설정. application.profile 의 jpa 설정을 다음과 같이 변경한다. spring.jpa.show-sql=false spring.jpa.properties.hibernate.format_sql=true 위와 같이 설정하였다고 해서 로그가 나오진 않는다. logging level도 조정하여 로그를 볼수있다. # 질의문 보기 logging.level.org.hibernate.SQL=debug # 질의에 대한 파라미터 보기 logging.level.org.hibernate.type.descriptor.sql=trace # 히카리 로그보기 logging.level.com.zaxxer.hi..
OpenFeign을 사용중에 다음과 같은 오류가 발생했다. Feign Client with Spring Boot: RequestParam.value() was empty on parameter 0 신기하게도 인텔리제이에서 구동할때는 오류가 없다가, VS Code tool 에서 구동하니 오류가 발생했다. @RequestParam을 사용할때 name="" 매개변수이름을 명확히 정의해 주어야 한다고한다. 이유는 Spring MVC 와 Spring cloud feign은 모두 동일한 ParameterNameDiscoverer 를 사용하여 DefaultParameterNameDiscoverer 매개변수 이름을 찾는다고 한다. 첫째 StadardReflectionParameterNameDiscoverer. 리플렉션..
Java Stream 스트림은 JAVA8 API 에 새로추가된 기능이다.스트림을 이용하면 선언형 (즉, 데이터를 처리하는 임시 구현코드 대신 질의로 표현할 수 있다) 으로 컬렉션 데이터를 처리 할 수있다. 일단 스트림이 데이터 컬렉션 반복을 멋지게 처리하는 기능이라고 생각하자. 또한 스트림을 이용하면 멀티스레드 코드를 구현하지 않고도 데이터를 투명하게 병렬로 처리할 수있다. → morden java in action Stream 의 여러 기능중 filter, sorted, map , collect 같은 여러 빌딩 블록 연산을 연결해서 복잡한 데이터 처리 의 파이프라인을 만들어 낼수있다. 여러 연산을 파이프라인으로 연결해도 여전히 가동성과 명확성이 유지된다. filter와(sorted, map, colle..