project_1_limhyoungtaek's People
project_1_limhyoungtaek's Issues
회원가입 화면을 구성하기 위해 필요한 항목을 생각해보자.
로그인 화면을 구성하기 위해 필요한 항목을 생각해보자.
물품 정보 등록
물품 정보 조회
3️⃣ DAY 3/ 기능에 대한 접근 권한 설정
-
1. 본래 “누구든지 열람할 수 있다”의 기능 목록은 사용자가 인증하지 않은 상태에서 사용할 수 있도록 한다.
- 등록된 물품 정보는 누구든지 열람할 수 있다.
- 등록된 댓글은 누구든지 열람할 수 있다.
-
2. 작성자와 비밀번호를 포함하는 데이터는 인증된 사용자만 사용할 수 있도록 한다.
- 이때 해당하는 기능에 포함되는 아이디 비밀번호 정보는, 1일차에 새로 작성한 사용자 Entity와의 관계로 대체한다.
- 물품 정보 등록 → 물품 정보와 사용자 관계 설정
- 댓글 등록 → 댓글과 사용자 관계 설정
- 누구든지 중고 거래를 목적으로 물품에 대한 정보를 등록할 수 있다.
- 등록된 물품에 대한 질문을 위하여 댓글을 등록할 수 있다.
- 등록된 물품에 대하여 구매 제안을 등록할 수 있다.
- 이때 해당하는 기능에 포함되는 아이디 비밀번호 정보는, 1일차에 새로 작성한 사용자 Entity와의 관계로 대체한다.
DAY 1 / 2. 로그인 기능 구현
commits 날라가서... 피어리뷰 풀리퀘스트에 적혀있는 것 링크 참고용
DAY 1 / 3. JWT 발급 및 서비스
DAY 1 / Entity 관련 수정
CustomUserDetails
로 변경 후인지는 정확히 모르겠으나, CustomUserDetails
, UserEntity
에서 @NotNull
, @Column(nullable=false)
, @NotBlank
적용이 안됨.
-> UserController - signUp()
에 조건문을 추가해서 해결했지만 [관련 Commit 참고], 수정해보고 싶어서 일단 이슈 작성@NoArgsConstructor
, @AllArgsConstructor
추가로 인해 파라미터 값이 제공되지 않아도 설정되는 것 같다고 추측 중
DAY 1 / 1. 회원가입 기능 구현
회원가입에 필요한 정보는 아이디와 비밀번호가 필수이다.
2️⃣ DAY 2 / 관계 설정하기
-
1. 아이디와 비밀번호를 필요로 했던 테이블들은 실제 사용자 Record에 대응되도록 ERD를 수정하자.
- ERD 수정과 함께 해당 정보를 적당히 표현할 수 있도록 Entity를 재작성하자.
- 그리고 ORM의 기능을 충실히 사용할 수 있도록 어노테이션을 활용한다.
-
2. 다른 작성한 Entity도 변경을 진행한다.
- 서로 참조하고 있는 테이블 관계가 있다면, 해당 사항이 표현될 수 있도록 Entity를 재작성한다.
1️⃣ DAY 1 / 인증 만들기
-
1. 사용자는 회원가입을 진행할 수 있다.
- #14
- 부수적으로 전화번호, 이메일, 주소 정보를 기입할 수 있다.
- 이에 필요한 사용자 Entity는 직접 작성하도록 한다.
-
2. 아이디 비밀번호를 통해 로그인을 할 수 있어야 한다.
-
3. 아이디 비밀번호를 통해 로그인에 성공하면, JWT가 발급된다. 이 JWT를 소유하고 있을 경우 인증이 필요한 서비스에 접근이 가능해 진다.
- 인증이 필요한 서비스는 추후(미션 후반부) 정의한다.
-
4. JWT를 받은 서비스는 사용자가 누구인지 사용자 Entity를 기준으로 정확하게 판단할 수 있어야 한다.
4️⃣ DAY 4/ UI 구현하기
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.