-
[김영한 스프링] 31. 로그인 처리1 쿠키, 세션 - 로그인 요구사항 & 프로젝트 생성 & 세팅Spring/스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 2023. 9. 8. 02:21
로그인 요구사항
- 홈 화면 - 로그인 전
- 회원 가입
- 로그인
- 홈 화면 - 로그인 후
- 본인 이름(누구님 환영합니다.)
- 상품 관리
- 로그 아웃
- 보안 요구사항
- 로그인 사용자만 상품에 접근하고, 관리할 수 있음
- 로그인 하지 않은 사용자가 상품 관리에 접근하면 로그인 화면으로 이동
- 회원 가입, 상품 관리
홈 화면 - 로그인 전
홈 화면 - 로그인 후
회원 가입
로그인
상품 관리
프로젝트 생성
이름 변경
다운로드한 파일 중 "login-start"를 원하는 곳으로 이동 후 "login"으로 이름변경
프로젝트 열기
build.gradle 열기
설정
설정 -> 파일 인코딩 -> 프로퍼티 파일에 대한 디폴트 인코딩을 UTF-8로 변경
설정 -> Gradle -> Intelij IDEA로 변경
실행
ItemServiceApplication 실행
결과
http://localhost:8080로 접속하면 HomeController에서 /items로 redirect 한다.
패키지 구조 설계
package 구조
- hello.login
- domain
- item
- member
- login
- web
- item
- member
- login
- domain
도메인이 가장 중요하다.
도메인 = 화면, UI, 기술 인프라 등등의 영역은 제외한 시스템이 구현해야 하는 핵심 비즈니스 업무 영역을 말함
향후 web을 다른 기술로 바꾸어도 도메인은 그대로 유지할 수 있어야 한다.
이렇게 하려면 web은 domain을 알고 있지만 domain은 web을 모르도록 설계해야 한다. 이것을 web은 domain을 의존하지만, domain은 web을 의존하지 않는다고 표현한다. 예를 들어 web 패키지를 모두 삭제해도 domain에는 전혀 영향이 없도록 의존관계를 설계하는 것이 중요하다. 반대로 이야기하면 domain은 web을 참조하면 안된다.
출처 : https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2
'Spring > 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술' 카테고리의 다른 글
[김영한 스프링] 33. 로그인 처리1 쿠키, 세션 - 로그인 기능 & 쿠키 사용 & 보안 문제 (0) 2023.09.12 [김영한 스프링] 32. 로그인 처리1 쿠키, 세션 - 홈 화면 & 회원 가입 (0) 2023.09.12 [김영한 스프링] 30. 검증2 Bean Validation - HTTP 메시지 컨버터 (0) 2023.09.07 [김영한 스프링] 29. 검증2 Bean Validation - Form 전송 객체 분리 프로젝트 준비 V4 & 소개 & 개발 (0) 2023.09.07 [김영한 스프링] 28. 검증2 Bean Validation - 수정에 적용 & 한계 & groups (0) 2023.09.07 - 홈 화면 - 로그인 전