오늘 공부한 것
* 주간 시험
* Spring 심화주차 강의 듣기
오늘도 어김없는 주간시험의 날이었다 마지막 주간시험의 날!! 많은 긴장을 했다
다행히 지금까지 해왔던 과제에서 조금 수정하면 되는거라서큰 문제 없이 끝나나했지만!! 그럴일 없지...배포를 해야하는 문제가있었다결국.. 배포는 하지 못했다나중에 페어분께 들어보니 Spring 숙련주차 2주차 숙제가 배포였다고한다그래서 거기있는 설명보면서 차근차근 배포를 해보았다내가 만든게 실제로 인터넷에 올라간걸 보니 뭔가 너무너무 신기했다
💡 Goal
중고거래 사이트인 항해마켓을 만들려 한다.
판매자는 더 이상 사용하지 않는 물건을 등록하고, 구매자는 등록한 물건의 리스트와 상세설명을 조회할 수 있도록 사이트를 만들어보자.
📌 features : 구현해야 할 기능이에요.
- 게시글 목록 DB는 다음과 같이 설계되어있어요.
- 테이블명 : Item
- id : 게시글 번호 (DB 인덱스)
- title (String) : 게시글 제목
- content (String) : 게시글 내용
- price(int) : 가격
- username : 작성자
- 구현해야하는 API는 다섯개입니다.
- 판매 게시글을 작성하는 API
- 판매 게시글을 상세 조회하는 API
- 판매 게시글을 전체 조회하는 API
- 판매 게시글을 수정하는 API
- 판매 게시글을 삭제하는 API
이후에는 남은 심화과정 수업을 들었다
부가기능 모듈화 @Aspect
AOP를 통해 만듬 핵심기능과 분리해서 부가기능 중심으로 설계 및 구현
1) 핵심기능 각 API 별 수행해야 할 비즈니스 로직, 검색, 등록, 회원가입 등
2) 부가기능 핵심기능을 보조하는 기능, 로그기록, API 수행시간 저장등
3) 어드바이스 부가기능을 핵심기능 언제 수행할지를 정하는 것
@Around 핵심기능 수행 전 과 후 (@Bebore + @After)
@Before 핵심기능 호출 전 (ex Client 의 입력값 Validation 수행)
@After 핵심기능 수행성공 / 실패 여부 상관없이 언제나 동작
(try, catch 의 finally()처럼 동작)
@AftrerReturning 핵심기능 호출 성공시 (함수의 Return 값 사용가능)
@AfterThrowing 핵심기능 호출 실패시 즉, 예외가 발생한 경우에만 동작
(ex 예외 발생시 개발자에게 email 이나 SMS 보냄)
4) 포인트컷 적용하고자 하는 지점
A. 형태 execution(modifiers-pattern? return-type-pattern declaring-type-pattern?
method-name-pattern(param-pattern) throws-pattern?)
a. modifiers-pattern public, private, *
b. return-type-pattern void String, List<Stirng>, *
c. declaring-type-pattern 클래스명 (패키지명 필요)
a) com.sparta.myselectshop.controller.* controller 패키지의 모든 클래스에 적용
b) com.sparta.myselectshop.controller.. controller 패키지 및 하위 패키지의 모든
클래스에 적용
d. method-name-pattern 함수명
a) addFolders addFolders() 함수에만 적용
b) add* add로 시작하는 모듬 함수에 적용
e. (param-pattern)
a) (com.sparta.myselectshop.dto.FolderRequestDto) FolderRequestDto
인수 (arguments) 만 적용
b) () 인수 없음
c) (*) 인수1개 (타입상관 없음)
d) (..) 인수 0 ~ N개 (타입 상관없음)
B. @pointcut 재사용 가능, 결합가능
@Exceptionhandler Spring에서 예외처리를 위한 애너테이션 Controller에서 발생한 예외를 처리하기 위해 사용
@RestControllerAdvice 모든 Controller에서 발상한 예외를 처리하기 위해 사용
내일부터는 주특기프로젝트이다
2주간 프론트엔드와 백엔드로 나누어서 진행하는 프로젝트인데 다른분들께 피해가 가지않도록 열심히 해야지!!
'항해99' 카테고리의 다른 글
23.09.16 항해 99 16기 주특기 프로젝트 2일차 (0) | 2023.09.16 |
---|---|
23.09.15 항해 99 16기 주특기 프로젝트 1일차 (0) | 2023.09.15 |
23.09.13 항해 99 16기 주특기 Spring 18일차 (0) | 2023.09.13 |
23.09.12 항해 99 16기 주특기 Spring 17일차 (0) | 2023.09.12 |
23.09.11 항해 99 16기 주특기 Spring 16일차 (1) | 2023.09.11 |