일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 쿼리
- 클라우드
- golang
- 페이징
- Spring
- Intellj
- SQL
- DP
- aws
- feign
- retry
- Kafka
- 디자인 패턴
- 오라클
- 알고리즘
- MST
- MVC
- JPA
- Spring Boot
- 자바
- 백준
- 데이터베이스
- db
- 운영체제
- 자료구조
- PL/SQL
- 코딩
- Jenkins
- Spring Cloud Feign
- Spring Cloud
- Today
- Total
목록IT (131)
justgo_developer
golang ent + sqliteent 프레임워크ent는 Facebook에서 개발한 Go 언어용 엔티티 프레임워크입니다. 이 프레임워크는 강력한 ORM(Object-Relational Mapping) 기능을 제공하며, 다음과 같은 특징을 가집니다:코드 생성: 스키마 정의를 기반으로 타입 안전한 코드를 자동으로 생성합니다.그래프 기반 쿼리: 복잡한 데이터 관계를 쉽게 탐색할 수 있는 그래프 기반 쿼리를 지원합니다.스키마 마이그레이션: 데이터베이스 스키마 변경을 쉽게 관리할 수 있습니다.확장성: 사용자 정의 필드와 엣지를 통해 복잡한 비즈니스 로직을 구현할 수 있습니다.데이터베이스 지원: SQLite를 포함한 다양한 데이터베이스를 지원합니다.ent를 사용하면 다음과 같은 이점을 얻을 수 있습니다:타입 안정..
이슈 : Consumer가 전체적으로 대부분의 토픽을 처리하지 못하고 있는 현상.발생한 로그Attempt to heartbeat failed since group is rebalancing : 카프카 heartbeat가 실패해서 rebalancing 발생Join group failed with org.apache.kafka.common.errors.MemberIdRequiredException: The group member needs to have a valid member id. Join group failed with org.apache.kafka.common.errors.UnknownMemberIdException: The coordinator is not aware of this mem..
#Go 설치wget https://dl.google.com/go/go1.22.5.linux-amd64.tar.gztar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz#설치한 Go 버전 확인cd /usr/local/bin./go version-> go version go1.22.5 linux/amd64#Go 프로젝트 경로 생성/data01/sw/project/goPATH#Go 환경변수 설정vi ~/.bash_profileexport GOPATH=$HOME/goexport PATH=$PATH:$GOPATH/binexport PATH=$PATH:/usr/local/go/bin#변경 사항 즉시 반영source ~/.bash_profile#Go 확인go versionGo 실행..
Spring Cloud Sleuth 적용 상세 Sleuth는 RestTemplate, Feign, WebClient와 같은 스프링 진형의 HTTP Client 모듈을 사용하는 경우 Sleuth 의존성을 추가하는 것으로도 설정이 자동적으로 동작하게 됩니다 spring boot 2.X 버전에서만 Spring Cloud Sleuth 사용 가능 Spring boot 3.X 버전에서는 Micrometer Tracking으로 변경 Spring Cloud Sleuth will not work with Spring Boot 3.x onward. The last major version of Spring Boot that Sleuth will support is 2.x. The core of this project go..
Bearer Authorization 목차 Token 기반 인증 Bearer 인증 개요 업체 쪽 API를 호출하는데 특정 API 401 Authorized 에러가 갑자기 발생하였다. 업체 쪽 환경은 MS Azure를 사용하고 토큰 기반으로 인증을 한다. 토큰 생성 API로 토큰을 생성하고 헤더 Authorization에 토큰 값을 담아 API를 호출하는 구조를 가지고 있다. 원인은 MS Azure 보안 인증이 강화되어 Bearer 인증 기능이 활성화되었다고 한다. Bearer 인증이 토큰 앞 부분에 "Bearer "만 추가하면 되는데 무엇인지 알아보려고 한다. 상세 1. Token 기반 인증 Token 기반 인증은 Session/Cookie 기반 인증 방식을 보완하기 위해 나온 인증 방식인데 Sessio..
Gson 이용 시 Unicode 변환 해결 방법 목차 Unicode란? Gson 사용시 unicode 문제 Gson 사용시 unicode 해결방법 개요 데이터 처리 중 암호화된 데이터 값이 달라지는 걸 발견하였는데, 알고보니 객체를 json으로 변환 중 문자가 unicode로 변환되어 나오는 것을 확인하였고, 해결방법에 대해서 알아보려고 한다. 상세 1. unicode란? Unicode 정의 유니코드(영어: Unicode)는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준이다. 유니코드는 유니코드 협회(Unicode Consortium)가 제정한다. 또한 이 표준에는 ISO 10646 문자 집합, 문자 인코딩, 문자 정보 데이터베이스, 문자들을 다루기 위한 알고리즘 ..
Json File Download(HttpURLConnection, FeignClient) 목차 HttpURLConnection 이용한 파일 다운로드 FeignClient 이용한 파일 다운로드 상세 1. HttpURLConnection 이용한 파일 다운로드 InputStream : 파일 데이터를 읽거나 네트워크 소켓을 통해 데이터를 읽거나 키보드에서 입력한 데이터를 읽을 때 사용 read(byte[] b): 배열 b의 크기만큼 데이터를 읽어와서 b에 저장한다. read(byte[] b, int off, int len) : len의 크기만큼 데이터를 읽어와서 배열 b의 off 위치부터 저장한다. FileOutputStream : 데이터를 파일에 바이트 스트림으로 저장하기 위해 사용한다. 주어진 이름의 파일..
추상 팩토리 패턴(Abstract Factory Pattern)를 이용한 인터페이스 중복 메소드 제거 목차 추상 팩토리 패턴(Abstract Factory Pattern) 정의 추상 팩토리 패턴을 이용한 설계 추상 팩토리 패턴을 이용한 예제 개요 원래 개발했던 연동 서비스에 새로운 업체가 추가되어야 한다. interface는 똑같지만 일부 메소드는 거의 동일하고 일부 메소드는 다르게 구현하여야 할 것 같다. 그래서 추상 팩토리 패턴을 이용해 공통코드를 추상클래스로 뽑아내려고 한다. 그 개념에 대해서 알아 보려고 한다. 상세 1. 추상 팩토리 패턴(Abstract Factory Pattern) 정의 팩토리를 추상화해서 관련있는 객체의 집합을 생성할 수 있는 팩토리를 만들고 조건에 따라 팩토리를 생성해서 서..
Spring Bean Injection + Factory Method Design Pattern 목차 팩토리 메소드 디자인 패턴 정의 팩토리 메소드 디자인 패턴을 이용해 동적으로 빈 주입 예제 상세 1. 팩토리 메소드 디자인 패턴 정의 팩토리 메소드 디자인 패턴(Factory Method Design Pattern) 객체를 생성하기 위한 인터페이스를 정의하고, 어떤 클래스의 인스턴스를 생성할지에 대한 처리는 서브클래스가 결정하는 디자인 패턴 - GoF 팩토리 메소드 패턴 사용 이유 추가될 클래스가 있을 시, 기존 코드 수정이 필요없이 신규 클래스만 추가되면 되므로 결합도가 낮다. 2. 팩토리 메소드 디자인 패턴을 이용해 동적으로 빈 주입 예제 하나의 인터페이스에 여러개의 구현체가 있을 경우, 매번 구현클..
java : Arrays.asList() + java.lang.UnsupportedOperationException 목차 List 일반적인 생성 방법 Arrays.asList 사용하여 생성 방법 Arrays.asList 사용 시 문제를 해결방법 개요 Arrays.asList로 배열을 List로 선언 후 리스트 값이 추가되거나 제거 될때 UnsupportedOperationException 예외가 발생. 상세 1. List 일반적인 생성 방법 @Test public void generalCreateList() { List sourceList = new ArrayList(); sourceList.add("order"); sourceList.add("delivery"); sourceList.add("claim..