profile
부족함을 인정하고 노력하자

[docker] spring boot와 redis 통신 삽질 -docker network

GCP에 docker를 사용해서 Spring boot, mysql, redis를 올려 docker run을 시켰습니다.Spring boot에서는 mysql과 redis와 커넥션이 되지 않는다는 에러를 뱉어냈습니다..삽질을 하다보니 결국 "docker network" 라

7일 전
·
0개의 댓글
·
post-thumbnail

GCP SSL, Nginx, Https

위 글은 기록용이므로 흐름 파악용으로만 보실 것을 권장드립니다. :)백엔드 API를 프론트 분들에게 GCP에 프로젝트를 배포하여 Swagger API를 제공하려고 합니다. GCP ubuntu 22.04nginxSSLdockerGCP 서버는 이미 만들어져 있고, 도메인도

7일 전
·
0개의 댓글
·

ELK 스택 찍먹하기 (ElasticSearch, Logstash, Kibana) - 1편 ElasticSearch

해당 시리즈는 인프런 강의를 듣고 정리한 내용입니다. ELK 스택 (ElasticSearch, Logstash, Kibana)으로 데이터 분석 데이터를 수집하여 elasticsearch에 넣어주는 logstash elasticsearch 데이터를 보기 좋게 보여주는

2024년 2월 20일
·
0개의 댓글
·

[Deep in java] 자바 지식 - 3

사내에서 진행하는 자바 스터디 3주차 주제입니다. 쓰레드 리플렉션 직렬화, 역직렬화 Java 동기 vs 비동기 클래스, 객체, 인스턴스 쓰레드 프로그램 & 프로세스 & 쓰레드 'process vs threads'https://www.youtube.com/watch?

2023년 11월 21일
·
0개의 댓글
·

[Deep in java] 자바 기본 지식 - 2

사내에서 진행하는 자바 스터디 3주차 주제입니다. 깊은 복사 vs 얕은 복사 추상 클래스 vs 인터페이스 final, static, static final overloading vs overwriting 제네릭 (Generic) 깊은 복사 vs 얕은 복사 깊은 복

2023년 11월 14일
·
0개의 댓글
·

[Deep in java] 자바 기본 지식 - 1

[Deep in java] 자바 기본 지식 - 1 사내에서 진행하는 자바 스터디 2주차 주제입니다. 기본형(Primitive type) & 참조형(Reference type) 값에 의한 호출(Call by value) & 참조에 의한 호출(Call by referenc

2023년 11월 6일
·
0개의 댓글
·

[Deep in Java] JVM

JVM (Java virtual machine) JVM은 컴퓨터에서 Java 프로그램은 물론 Java 바이트코드로 컴파일된 다른 언어로 작성된 프로그램을 실행할 수 있게 해주는 가상 머신입니다. JVM은 플랫폼에 상관 없이 어떤 플랫폼에서도 Java 클래스 파일이 실

2023년 11월 1일
·
0개의 댓글
·

[JPA] Spring boot + JPA + Sqlite BaseEntity 만들기

작성하려는 내용은 제목과 같습니다. 일단 코드 투척mysql에서는 LocalDateTime을 사용하여 시간을 찍었지만 Sqlite는 시간 format이 알아보기 힘들게 저장됩니다. 그래서 위와 같이 String로 저장하는 것이 사람이 이해할 수 있는 format으로 저

2023년 9월 14일
·
0개의 댓글
·

[Springboot] 비동기로 일정 시간 후 메서드 1회 실행시키기

자바 코드로 우분투 네트워크 인터페이스 수정 (file 수정)서버 reboot서버 실행 시 자동으로 spring boot 프로젝트 실행 spring boot 실행 후 웹 접속하여 정책 확인 버튼을 누르지 않으면 5분후 자동백업되어 있던 인터페이스 설정 파일 되돌리기 &

2023년 9월 13일
·
0개의 댓글
·

[Design Pattern] 프록시 패턴

월래 객체를 대신하여 요청을 받아 원래 객체를 호출하기 전이나 후에 특정 로직을 실행하는 패턴을 말합니다. 여기서의 중요 포인트는 원래 객체가 호출되기는 한다는 것과, 전이나 후에 특정 로직을 넣을 수 있다는 점입니다.프록시 패턴을 구현하기 위해서는 하나의 인터페이스와

2023년 8월 27일
·
0개의 댓글
·

[Design Pattern] 옵저버 패턴

자주 사용되는 디자인 패턴 옵저버 패턴 옵저버 패턴에서 다루고 있는 이벤트라는 개념은 프로그래밍 언어, 설계차원에서 널리 사용되고 있습니다. 옵저퍼 패턴은 어떤 대상의 상태 변화에 관심 있어하는 대상들에게 상태가 변화됐다고 전파할 수 있는 패턴(어떤 일에 대한 구독과

2023년 8월 25일
·
0개의 댓글
·

[Design Pattern] 싱글턴 패턴

해당 클래스의 인스턴스를 오직 하나만 만들 수 있도록 제한하는 패턴입니다. 왜 ? 인스턴스를 하나만 만들도록 제한하는 이유가 무엇일까요?인스턴스를 새로 생성한다는 것은 자원(메모리, 시간)을 소모하는 행위입니다. 결과적으로 인스턴스를 새로 생성하지 않으면 생성에 필요한

2023년 8월 23일
·
0개의 댓글
·

[Design Pattern] 전략 패턴

축구 게임을 예시로 들도록 하겠습니다. A 공격 패턴과 B 공격 패턴이 있습니다. 상대의 수비 패턴에 따라 효율적인 공격 패턴을 선택하여 공격을 해야 합니다. 이처럼 전략패턴은 이처럼 실행 시점에 사용하는 전략을 선택하여 상황에 맞는 전략이 사용될 수 있도록 만드는 패

2023년 8월 23일
·
0개의 댓글
·

[Design Pattern] 퍼사드 패턴

앞의 게시글의 어댑터 패턴보다 더 자주 사용하게 되는 패턴인 퍼사드 패턴입니다.Facade는 건물의 정면의 의미합니다. 건물 내부의 복잡함을 숨기고 건물의 정면만을 나타나게 합니다. 사용자들은 건물의 정면에 있는 출입구를 통해 내부를 이용하게 됩니다. 건물의 정면이 마

2023년 8월 22일
·
0개의 댓글
·

[Design Pattern] 어댑터 패턴

우리가 실생활에서 사용하는 여행용 어댑터입니다. 220V를 110V로 변환시켜줍니다.프로그래밍적으로 접근해보겠습니다.포트 모양의 변경 -> 인터페이스 변경220V와 110V 사이의 변환 -> 호환을 위한 추가적인 동작어댑터 패턴은 이 두가지를 다 수행합니다.기존에 프로

2023년 8월 16일
·
0개의 댓글
·

[SOLID] 의존 역전 원칙

객체지향의 핵심 원리와 원칙들 DIP, 의존 역전 원칙 > DIP : Dependency Inversoin Principle 고수준 컴포넌트는 저수준 컴포넌트에 의존하지 않아야 한다. 의존 역전 원칙이 깨진 상황과 지켜진 상황 개방 폐쇄 원칙(OCP)과 비슷해보이

2023년 8월 15일
·
0개의 댓글
·

[SOLID] 인터페이스 분리 원칙

객체지향의 핵심 원리와 원칙들 ISP, 인터페이스 분리 원칙 > ISP : Interface Segregation Principle 클라이언트별로 세분화된 인터페이스를 만들어야 한다. 여기에 Repository가 선언되어 있습니다. 해당 인터페이스를 구현하는 두

2023년 8월 15일
·
0개의 댓글
·

[SOLID] 리스코프 치환 원칙

LSP : Liskov Substitution Principle부모 클래스가 할 수 있는 행동은 자식 클래스도 할 수 있어야 한다.원래의 정의는 이것이 아니나 직관정의는 이렇다 할 수 있습니다.Child는 Parent를 상속 받아 someMethod를 오버라이딩하고 있

2023년 8월 15일
·
0개의 댓글
·

[SOLID] 개방-폐쇄 원칙

OCP : Open Closed Principle소프트웨어는 확장에는 열려있고 변경에는 닫혀 있어야 한다.서비스와 레포지토리들 중간에 Repository(interface)를 추가하면서 고수준 컴포넌트(Service)가 저수준 컴포넌트(Database Repositor

2023년 8월 15일
·
0개의 댓글
·

[SOLID] SRP, 단일 책임 원칙

SRP : Single Responsibility Principle하나의 클래스는 하나의 책임만을 가져야 한다."책임은 변경하려는 이유" 라고 로버튼 C.마틴이 말했습니다.스프링의 기본적인 패턴입니다. 각 3개의 컴포넌트들은 각각의 역할이 있습니다.여기 각각의 역할에

2023년 8월 15일
·
0개의 댓글
·