profile
back end developer
post-thumbnail

Spring) Spring Cloud Config Client를 나만의 라이브러리로 만들어 보자.

Spring Cloud Config를 동적으로 조작하는 방법은 크게 3가지로 나뉜다.장점 : 구조가 단순해서 서버 관리가 쉽다. 단점 : 변경한 서비스의 인스턴스가 100개라 가정했을때 refresh 요청 보내야할게 100개다ㅎㅎ;장점 : 인스턴스 별로 refresh를

2023년 3월 23일
·
0개의 댓글
·
post-thumbnail

Linux) vscode 에 EC2를 원격접속 시켜보자..

사용하는 서버가 많을때 유용할거같다. 파일 찾으려 ls -a 같은 문구 안써도 된다.. 우선 결과물 부터 vscode 설치 와 EC2 서버 만드는 방법은 생략하고 vscode에 어떻게 연동시키는지만 알아보자vscode 마켓플레이스에서 Remote를 검색하면 위 사진

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

Spring) @Transaction 은 언제 commit 할까?

@Transaction 어노테이션이 걸린 메소드 안에서 데이터 변경 후 외부 api로 데이터 변경되었음을 알렸지만, 외부 api로 데이터를 조회한 결과 변경되지 않고 조회되는 문제가 있었다.em.flush는 SQL을 발생시키지만 Commit을 시키지 않는 문제점 확인여

2022년 12월 26일
·
0개의 댓글
·
post-thumbnail

Spring) FeignClient로 카카오 로그인 구현

의존 관계 때문에 spring-boot-starter-oauth2-client 를 사용하지 않고 Feign Client로 구현하고 싶었다.OAuth2 라이브러리를 사용하게 되면 Spring Security가 Application 단계에서 구현되어 main을 가지는 각각

2022년 11월 9일
·
0개의 댓글
·
post-thumbnail

Spring) QR-Code Login을 구현해보자

개요 >Telegram 과 같은 채팅어플을 개발중에 QR-LOGIN을 구현하는 기획이 있었다. 방법 찾기 > 나는 NAVER에서 구현한 QR-LOGIN이 어떤방식으로 로그인처리를 하는지 알고싶어서 파헤치기 시작했다. 1. 네이버는 QR에 3분의 시간 제한을 두었

2022년 11월 5일
·
0개의 댓글
·
post-thumbnail

Spring) Docker JDK 무조건 신뢰 금지

Telegram message 일일근태 API 가 Local에서는 작동하나, ec2에서는 작동안하는 문제 확인.프로젝트에 있던 도커파일을 빌드하여 로컬에서 도커를 띄워본다.Docker Log를 띄우니 unsatisfiedlinkerror /usr/local/openj

2022년 8월 30일
·
0개의 댓글
·

Flutter ) 이젠 dart다. 자바 개발자가 이해하는 dart

배우게 된 계기 예전부터 배우고 싶은 언어 중 하나였다. 그러다 이번에 채팅 어플을 개발한다는 소식이 들려와 본격적으로 어플을 만들어 보려고한다. 너무 잡탕밥이 되어가는 개발인생인거 같지만 언젠가 쓸모있지 않겠는가... 본론 자바언어랑 흡사한 부분이 많아 다른부분

2022년 8월 26일
·
0개의 댓글
·
post-thumbnail

Spring) Immutable을 경험하다.

위와같이 일일근태를 간결히 보여주는 테이블을 만들고 있었다.union으로 간단히 해결될 거라 생각했던것과 달리 데이터가 생각대로 나오지 않았다.결국 query에서는 unionAll로 모든데이터를 끌고와서 비즈니스 로직에서 처리하기로 하였다.처리하는 과정 중 Unsup

2022년 8월 26일
·
0개의 댓글
·

Spring) Telegram message에 Table 을 보내보자

문제 : Telegram message API에는 markdown과 html을 사용할 수 있으나, table을 사용할 수 없었다. 첫번째 시도. 처음엔 스택오버플로우 형님들이 올려두신 방법대로 문자로 테이블모양을 그렸었다. 그러나, 문자열의 길이가 제각각이면 테이

2022년 8월 25일
·
0개의 댓글
·
post-thumbnail

Spring) Security 권한설정하기

사내 전사관리시스템을 개발하는데 있어 엔드포인트 별로 권한설정이 필요했다.개요\-> Security에서 권한 설정하는 방법은 크게 2가지다.Configure에서 설정하는방법Method위에 Anotation으로 설정하는 방법문제점\-> 나는 엔드포인트와 권한들을 한눈에

2022년 8월 17일
·
0개의 댓글
·

Swift) 기본 문법

상수는 let변수는 varInt -> 64bit 정수형UInt -> 부호가 없는 64bit 정수형Character -> 문자Any -> 모든 형태그 외 다 동일 코틀린과 동일하게 타입추론이 가능하다.Array -> 데이터 타입의 값들을 순서대로 저장Set -> 같은 데

2022년 8월 2일
·
0개의 댓글
·

Spring) Validator 추상화

Validator 를 알고가고자 이 글을 작성

2022년 6월 15일
·
0개의 댓글
·

@EqualsHashCode

@EqualsAndHashCodeequals와 hashcode를 만들어 주는 것equals: 두 객체의 내용이 같은 지 확인hashcode: 두 객체가 같은 객체인지 확인Tip.@EqualsAndHashCode(of="id"): 연관 관계가 복잡해 질 때, @Equal

2022년 6월 14일
·
0개의 댓글
·

JPA ) N + 1 Problem

JPA 엔티티 조회 중 N + 1 문제는 정말 많이 일어난다.아래는 Study Entity를 조회했을때 발생되는 쿼리의 양이다.나는 Study entity 하나만 조회했을 뿐인데 5번의 쿼리가 나갔다.JPA 가 연관된 테이블들을 한번에 조회하지 않고지연로딩으로 되어 있

2022년 6월 13일
·
0개의 댓글
·
post-thumbnail

SpringBoot)Large Objects may not be used in auto-commit mode.

클론코딩 중 해당 이슈가 발생하였다.가지고 오려는 데이터 중 BLOB 데이터를 포함한다.따라서 JPA에 영속되기도 벅차고 변경감지 하기에는 리소스를 너무 많이 소모되기 때문에 변경감지나 지연로딩을 수행할 수 없다.Repository 인터페이스에 @Transactiona

2022년 6월 13일
·
0개의 댓글
·
post-thumbnail

MSA) Custom Filter

Inflean MSA 강의 도중에 AbstractGatewayFilterFactory가 궁금해서 블로그를 찾아보다가 잘 정리된 글이 있어서 참고해서 정리해서 올려둔다....(사실따라쓰기 수준임..)인프런 MSA 강의에서는 spring cloud Gateway가 제공하는

2022년 6월 12일
·
0개의 댓글
·
post-thumbnail

@MockBeen 과 @Autowired 의 차이

테스트 코드 작성 중 @MockBean과 @Autowired가 뭐가 다른지 궁금해짐 필요한 의존 객체의 타입에 해당하는 빈을 찾아 주입.@SpringBootTest 에 의해 띄워진 빈들중 찾아서 주입하는 것..Mock은 껍데기만 있는 객체Mock Bean은 기존에 사용

2022년 6월 10일
·
0개의 댓글
·
post-thumbnail

aws) 내 앱 배포하기 (4)

이번 장에서는 Spring 내장 톰켓을 이용하여 back-end 서버를 기동시켜보자.스프링을 빌드 하게되면 jar파일을 생성한다.jar 파일을 실핼시키기 위해 Ubuntu에 Java를 설치 해야한다.스프링 프로젝트와 호환되는 버전을 선택해서 설치한다.설치 확인환경 설정

2022년 2월 17일
·
0개의 댓글
·
post-thumbnail

aws) 내 앱 배포하기 (3)

Ubuntu 환경에서 Nginx를 이용하여 React를 배포해 보자.필자는 '/home/ubuntu' 에 생성하겠다.현재 디렉토리 확인은 'pwd' 명령어로 확인 가능하다.react를 build 하기 위해선 node.js가 필요하다. nodejs 설치를 위해 아래 커맨

2022년 2월 16일
·
0개의 댓글
·
post-thumbnail

aws) 내 앱 배포하기 (2)

Ubuntu 20.5에 Nginx를 설치하고 서버를 실행 해 보자계속할지 묻는 메시지가 표시되면 키보드에서 'Y'를 눌러 설치를 완료합니다./etc/nginx/nginx.conf: 설정 파일이다./etc/nginx/sites-available: 서버 블록 환경설정 파일

2022년 2월 16일
·
0개의 댓글
·