[정종현] sprint9#328
Open
JJHyunDev wants to merge 89 commits intocodeit-bootcamp-spring:part2-정종현from
Hidden character warning
The head ref may contain hidden characters: "part4-\uc815\uc885\ud604-sprint9"
Open
Conversation
User, Message, Channel 도메인 모델 구현
- 설계한 서비스 인터페이스 추가 - 해당 인터페이스의 구현체 구현 - 각 도메인 모델별 CRUD - JCFx메모리 기반
- MessageService, UserService, ChannelService 인스턴스 생성 및 초기화 - 기본 실행 로직 구현
-(User, Channel, Message) extends BaseEntity -공통 속성 BaseEntity로 리팩토링 -Override toString()
-(User, Channel, Message) 생성 메서드 매개변수, return type 변경
-(User, Channel, Message) toString 에 TimeFormmater.format() 설정 추가
-인터페이스 수정에 따른 save 메서드 수정 -출력 포멧 toString으로 간소화 -stream API 도입
-Service 구현체 Singleton 구현 -MessageService에 UserService, ChannelService 의존성 추가
-Service 간 의존성 추가 -saveMessage 의존성 검증 로직 추가
…-sprint1 [정종현] sprint1
timeformatter parttern 으로 입력 받아서 format type 설정
interface method return type edit void to List, Optional
edit Entitiy set method validation
System.out.println() -> throw new exception() interface method return type 변경으로 구현체 return type 변경 테스트 일부 수정
Entity, service interface 일부 수정
…-sprint2 [정종현] sprint2
이후 미션을 위해 코드잇에서 제공해준 코드로 변경 스프린트 미션3 기본 요구사항 구현
ReadStatus, UserStatus, BinaryContent 추가 각 도메인 모델 별 Repository interface 선언
DiscodeitException 누락 추가
Collaborator
|
원 PR 은 자정 전에 제출 완료되었으나 브랜치 오류로 재제출 — 정시에 제출 성공한 것으로 간주하겠습니다. |
roeniss
approved these changes
Jul 8, 2025
Collaborator
roeniss
left a comment
There was a problem hiding this comment.
구현을 깔끔하게 잘 해내신 것 같습니다. 추가로 두 가지 정도만 언급하고 싶은데요,
- 테스트코드에도 관심을 주면 더욱 좋을 것 같습니다.
- (잡지식) 코드 중에 "implies(...)" 로 ROLE 의 hierarchy 를 잡는 부분이 있는데요, 이런 부분을 처리하기 위한 별도의 언어들도 있습니다. Policy-as-a-code 라고, 권한 시스템을 프로그래밍(?) 언어로 표현한 것이지요. https://www.permit.io/blog/what-is-policy-as-code 같은걸 보시면 좋을 것 같습니다.
Comment on lines
+83
to
+92
| @Bean | ||
| public String debugFilterChain(@Qualifier("filterChain") SecurityFilterChain chain) { | ||
| log.debug("Debug Filter Chain..."); | ||
| int filterSize = chain.getFilters().size(); | ||
| IntStream.range(0, filterSize) | ||
| .forEach(idx -> { | ||
| log.debug("[{}/{}] {}", idx + 1, filterSize, chain.getFilters().get(idx)); | ||
| }); | ||
| return "debugFilterChain"; | ||
| } |
Collaborator
There was a problem hiding this comment.
이런 공부는 너무 좋다고 생각합니다. 하지만 여기 코드에선 빠져있거나 주석처리 하는 편이 좋았을 것 같아요
Comment on lines
+14
to
+17
| @Override | ||
| public void run(ApplicationArguments args) throws Exception { | ||
|
|
||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
요구사항
기본 요구사항
Spring Security 환경 설정
CSRF 보호 설정하기
회원가입 고도화
기본 인증 구현
로그아웃
권한 관리
인가 처리
심화 요구사항
Remember-Me
다음의 조건을 만족하도록 로그인 유지 기능을 구현하세요.
동시 로그인 제한
세션 고정 보호
사용자 로그인 상태 고도화
인가 고도화