본문 바로가기

spring9

TIL 230906 : Redis 4 - 클라우드에 서버 띄우기 (Redislabs) 지금까지는 로컬에 Redis를 띄워뒀는데, 이제는 클라우드에 띄워보기로 한다. 우선은 aws ec2 인스턴스를 새로 만들기보다는 간편하게 클라우드 환경을 만들어주는 Redislabs를 활용할 예정이고, 이후 캐싱전략시에 다시 리팩토링 해보려 한다. Redislabs DB생성 Redislabs라는 공식으로 지원하는 클라우드 콘솔이다. 30MB가 무료다. 딱 연습용으로 알맞아 보인다. 익숙한 AWS로 만들고 Region의 경우에는 한정되어 있다. (서울이 없다) DB연결 위처럼 간편하게 DB가 생성된 걸 확인할 수 있다. 이제 연결해야 한다. Endpoint의 'Connect'버튼을 누르면 아래와 같이 친절하게 나온다. CLI에 연결해줄 명령어를 자동으로 작성해준다. Host, Password, Port 이.. 2023. 9. 13.
TIL 230904 : Redis 2-1 - RefreshToken을 이용해 자동으로 AccessToken 재발급하기 (Spring Security) https://thiswooin.tistory.com/94 TIL 230901 : Redis 2 - RefreshToken구현하기. 발급 및 Redis저장. (Spring Security) https://thiswooin.tistory.com/92 TIL 230830 : Redis 1 - Spring에서 연동하기 (lettuce, jedis, RedisTemplate, CRUDRepository 활용) 지난 시간에 로컬로 Redis서버를 실행하고 RedisInsight라는 GUI를 이용해 Redis 데이터를 저장해 thiswooin.tistory.com RefreshToken을 발급하고 클라이언트로 보내는 과정까지 했다. 이번엔 RefreshToken의 존재이유인 AccessToken만료시 Refresh.. 2023. 9. 8.
TIL 230829 : Redis 0 - 설치 세팅. (Windosw, RedisInsight) 지난 시간까지 하던 테스트 코드는 우선 BDDMockito와 통합테스트의 과제를 우선 보류하려 한다. 대략적인 단위테스트의 방법은 터득했는데, 다른 기능들의 추가가 조금 더 급해보여서이다. 그리고 테스트코드의 그 깊이와 심화된 통찰을 필요로 함을 느껴서 우선 유보한다. 그리고 이번엔 지난번 S3서버 연동, 테스트코드와 같이 내가 기존에 시간상 부족이라는 이유로 미뤄뒀던 것들 중 하나인 Redis서버 연동이다. 원래는 RefreshToken을 먼저 도입하려했는데 서버쪽에서도 그 값을 가지고 있어야할듯해서 겸사겸사 같이 도입하기로 했다. Redis? redis 자체적인 뜻은 REmote DIcionary Server의 줄임말이다. - 뜻에서도 알 수 있듯 키-값의 형태로 데이터를 저장하는 Dictionary.. 2023. 8. 30.
TIL 230705 : PK FK N:M 중간테이블 매핑하며 (해시태그 게시글 작성) 작업내용 오른쪽과 같이 Tag(HashTag에서 변경 : Post가 N:M 관계여서 중간에 받아주는 TagPostTable 중간테이블을 만들었다. 정리하자면 Post랑 Tag의 외래키를 갖는 TagPostTable Entity를 하나 더 만들고 맵핑하였다. 그러고 어김 없이 오류가 났는데 그로인해 배운 원칙을 정리하자면 아래와 같다. 배운점 1. FK를 가지고 있는 객체를 Repository에 저장할 때는 FK로 매핑된 객체들이 PK를 가지고 있어야 한다. 쉽게 말해, Tag와 Post객체의 각 PK를 FK로 가지는 TagPostTable 객체를 만들고 DB에 save할때 각 객체들이 PK값을 가지고 있어야 한다. tagPostTable 객체를 DB에 저장하기 전이다. 아직 id(PK)값은 null이고,.. 2023. 7. 6.
TIL 230704 : @Getter의 중요성 (허무한 단순 오류 해결) 문제발생 Reply 엔티티 작업하다 또 다시 이전처럼 Reponse가 오질 않았습니다. 디버깅을 돌려봅니다. 우선 claims까지는 잘가져옵니다. 갑자기 hibernate_interceptor가 나오고 원래의 멤버들은 null로 나옵니다. User객체를 다르게 받아오고 있다. 시도 1. UserRepository를 제대로 주입 못 받고 있다? 여기에는 Bean이 주입이 안되어서 그런건가 Repository를 잘 못 가져오는 건지 생각했습니다. 다른 곳은 이렇게 옆에 Bean 주입받는게 보이는데 말이죠. 근데 이는 @RequiredArgsConstructor 어노테이션의 영향이고 크게 중요한건 아니었습니다. 시도 1-2. 다른 객체가 생성되서 그런가 그래서 저 뒤에 참조값이 다른 것은 아닌가 추측해봤습니다.. 2023. 7. 4.
TIL 230623 : ERD를 알아보자 (Entity Relation Diagram) ERD? 개인과제로 ERD제출을 같이 요구 받았다. ERD?? 처음 들어봤다. 예전 특강때 보니까 이미 아는 사람이 꽤 있어보이기도 했지만 나는 처음이었고, 업무에 있어서 꽤나 잘 배워두고 넘어가면 좋을 것 같아서 미루다가 오늘 시간 좀 내서 정리해보며 실습해봤다. 우선 직접 만들어 본 결과물. 쉽게 말하자면 자료구조? 각 데이터 클래스들, Entity들의 관계도를 다이어그램으로 나타낸 것이다. Entity, Attribute, Relationship 도형이 이렇게 3가지이다. Entity : 하나의 객체가 되는 데이터 Attribute : Entity에 거기에 속해있는 속성들 테이블 상에서 칼럼이 되는 속성 Relationship : Entity 간의 관계성 PK Attribute안에 밑줄이 그어진 것.. 2023. 6. 23.