본문 바로가기

Study in Bootcamp/Main Project20

[Main Project] Day 9 : 로그인 수정하기 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. 📌 Login 시 Authority 적용 https://bhinney.tistory.com/138 위의 블로그를 보면 hasRole()이 되지 않았던 문제가 있던 걸 알 수 있다. 코드를 하나씩 뜯어가면서 다시 보았더니 권한은 주었으나 GrantedAuthority로 권한을 주지 않았던 것이다. 그래서 Provider의 내용을 아래 코드처럼 수정해주었고, Claim으로 받았던 부분들을 모두 Map으로 수정해주었다. 그랬더니 작동이 되었다...!!!!!!! Config 파일도 아래처럼 코드를 수정해서 확인해보았더니 아래 사진처럼 잘 되었다.! /* Security Config.java */ @Bean p.. 2022. 11. 19.
[Main Project] Day 8 : 소셜 로그인 구현 및 자체 로그인 공통 클래스 정리 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. 📌 소셜 로그인 구현 카카오 소셜 로그인 구현에 성공하였다. 해당 사진을 캡쳐하지 못해서 내일 다시 캡쳐해보려고 한다. 카카오 API : https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api 위의 API를 이용하였으며, redirect를 보았다. 📌 공통 클래스 정리 이제 본격적으로 소셜과 자체 로그인을 합치려고 한다. 따라서 공통으로 쓸 수 있는 클래스들을 정리하여 하나의 클래스로 합치는 작업을 하였다. TokenProvider와 Controller, Service 세 가지는 합치는 것에 성공했다. 이제 해당 클래스들을 적절히 수정해야겠지!.. 2022. 11. 17.
[Main Project] Day 6 & 7 : JWT Provider를 이용한 로그인 구현 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. 전날 분량이 너무 적어 같이 쓰게 되었습니다. ✅ Day 6 📌 JWT Provider를 이용한 로그인 구현 프리 때 구현하였던 JWT Tokenizer 가 아닌 Provider로 구현을 하였다. 한 깃헙을 참조하여, Controller 부터 Service까지 직접 만들어서 구현해보았다. 이번 메인 프로젝트가 끝나면 해당 정보들을 정리해서 깃헙과 블로그에 올릴 생각이다. 프리 때 해당 토큰이 잘 오가지 않았던 적이 있어서 바디로도 헤더로도 둘 다 출력 할 수 있게 우선 설계하였다. 참고한 깃헙 주소 : https://github.com/ParkJiwoon/practice-codes/tree/master.. 2022. 11. 16.
[Main Project] Day 5 + 주말 : 회원 관련 CRUD 구현, Rest Docs 시도... 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. ✅ 주말동안 한 일 📌 연관 관계 매핑 이번에는 많은 테이블이 연관이 되어있다. 그래서 해당 클래스들 중 현제 구현된 엔티티끼리 연관 관계 작업을 해주었다. 일대다, 일대일 매핑과 연관관계 편의 메서드를 사용하여 작업. 생각보다 저번 프리 때에 예시로 적어둔 글이 유용했다. 📌 회원 가입 구현 (Member Create) 입력 되는 권한에 따라 소비자와 판매자를 나눠 역할을 부여하였다. 나중에 시큐리티로 권한을 확인할 역할(roles) 외에 DB에 저장하는 역할도 role로 설정해주었다. 📌 판매자와 소비자의 정보 조회 구현 (Member Read) 판매자의 마이페이지와 소비자의 마이페이지를 조회하는 .. 2022. 11. 14.
[Main Project] Day 4 : API 명세서 작성 ,ERD 수정 최종(?), Entity 작업 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. ✅ API 명세서 작성 어제 만든 테이블과 프론트엔드의 피그마를 바탕으로 명세서를 다시 작성하기 시작했다. 엔드 포인트를 제대로 정해야 나중에 작업할 때 힘들지 않고, 응답 바디도 미리 알아야 제대로 줄 수 있기 때문이다. 하면서 하나 하나 짚어가면서 빠진 것과 논의할 부분들을 얘기하면서 하다보니 조금 시간이 오래 걸렸다. 혹시 우리가 너무 깊게 생각하는 건가.. 그래도 하다보니 마무리가 되었다..! (드디어!) 너무 디테일하게는 못하고 어느 정도의 선까지 작업을 하였다. 그리고 그 이후 변화가 필요하다면 상의를 통해 작업하기로 했다. ✅ ERD 수정 ... 다시 한 번 더 수정하였다. 연관 관계는 진.. 2022. 11. 11.
[Main Project] Day 3 : ERD 수정 및 멘토링 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. ✅ 다시 한 번 더 마이너스 API 명세서를 적다보니 수정해야할 부분이 많이 생겼다. 각 팀별로 상의도 하고 모여서 현실적으로 빼야 할 부분들을 정리했다. 장바구니, 체험 게시판은 우선 빼기로 결정하였다. 또한 소비자와 판매자 구분에 대한 이슈를 좀 더 상의해서 회원 가입 페이지는 하나지만 그 안에서 구분할 수 있도록 설계를 해볼 예정이다. ✅ ERD 수정 ERD 수정을 시작했는데, 갑자기 다시 작업하려나 사고회로가 그냥 정지되었다. 일차적으로 마이너스 작업을 바탕으로 수정하고, 멘토 님께 조언을 구한 후 최종 수정을 하였다. 하지만 작업 하면서 계속 변하지 않을까 한다. 우선 가장 큰 변화는 회원의 .. 2022. 11. 11.
[Main Project] Day 2 : 사용자 요구사항 정의서 및 ERD 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. ✅ 사용자 요구사항 정의서 프론트 엔드와 백 엔드 같이 사용자 요구사항 정의서를 작성하였다. 크게 필요한 클래스에서 세부적인걸 조금 나눠서 썼다. 거기서 하나씩 쓰면서 가능한 것과 CRUD는 기본적으로 상으로 배치하였다. 그리고 하면서 구현에 도전해 보겠으나 어려운 것들을 중이나 하로 배치하여 작업순위를 정하였다. 사용자 요구사항 정의서는 각자 프리 때 했던 것을 바탕으로 정리하였다. ✅ ERD 작성 사용자 요구사항 정의서를 바탕으로 ERD를 작성하였다. 이번에는 dbdiagram이 아닌 ERDCloud라는 프로그램을 이용하였다. dbdiagram보다 필드 내용을 더 정리된 형태로 볼 수 있었다. 또한.. 2022. 11. 10.
[Main Project] Day 1 : Start❗️ 본 글은 프로젝트를 기록하기 위해 적은 글 입니다. 수정이 될 수 있으며, 정확하지 않을 수 있습니다. ✅ 팀 빌딩 팀원 구성 및 팀원 역할을 정하였다. 서기로 노션 페이지 관리하기로 결정. 해당 직업군에 맞추어 아이디어를 제시했다. 그리고 그 해당 아이디어에 맞추어 세부적인 의견들을 제시하여 정리하였다. 그리고 아이디어를 선택하였다. 🔥 내일 할 일 요구사항 정의서 작성 팀 별 회의 2022. 11. 9.