해야 할 목록
이불 정리
스트레칭
목표 의식화하기
패스트캠퍼스 강의
하루 돌아보고 피드백 하기
눈 운동
내일 계획 세우기
스프링부트 책 읽기
책 읽기
업무
하지 말아야 할 것
1. 쓸데 없는 유튜브 시청 하지 않기
2. 과거 및 쓸모없는 생각 하지 않기
3. 부정적인 감정 가지지 않기
4. 한계를 정하지 않기
하루목표일과
05:00 ~ 05:30 이불정리, 스트레칭, 목표 의식화
05:30 ~ 07:30 패스트캠퍼스 강의
07:30 ~ 09:00 경제 지표 공부
09:00 ~ 09:30 씻기
09:30 ~ 10:15 출근 - 스프링부트 책 공부
10:10 ~ 11:30 업무
11:30 ~ 13:00 점심
13:00 ~ 18:00 업무
18:00 ~ 18:45 퇴근 - 스프링부트 책 공부
18:45 ~ 19:15 씻기
19:15 ~ 20:00 저녁
20:00 ~ 21:30 개발 강의 공부
21:30 ~ 22:00 통화
22:00 ~ 23:00 책 읽기
23:00 ~ 23:30 하루 돌아보고 정리, 다음날 목표 적기
하루일과
08:30 ~ 09:20 씻고 출근준비
09:20 ~ 10:10 출근(스프링부트 책)
10:10 ~ 11:30 단위테스트 및 문서작성
11:30 ~ 13:00 점심 및 산책
13:00 ~ 14:30 단위테스트 및 문서작성
14:30 ~ 15:20 퇴근(책 읽기)
15:20 ~ 16:00 카톡(DTO, VO, ENTITY, JPA 등 설명)
16:00 ~ 17:20 뚱장스터디 템플릿 만들기 및 경제 공부
17:20 ~ 17:30 통화
17:30 ~ 19:00 패스트캠퍼스 강의
19:00 ~ 19:10 집 이동
19:10 ~ 19:50 씻기
19:50 ~ 20:23 통화
20:23 ~ 21:35 저녁, 음식물 치우기, 설거지, 손발톱자르기
21:35 ~ 21:47 내일 계획 세우기
21:47 ~ 22:20 휴대폰, 양치, 하루 돌아보기
22:20 ~ 23:00 휴식
달성 목록 or 시도
1. 이불정리
업무
책 읽기
스프링부트 책 읽기(남은 내용이 크게 없음)
경제 공부
패스트캠퍼스 강의
뚱장 스터디 경제 공부 및 템플릿
내일 계획 세우기
하루 돌아보기
반성 및 하루 돌아보기
공부 내용
@JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class) - json 변환시 snake 형식으로 변환해준다고 선언(car_number로 json 입력을 보내면 carNumber로 매핑)
Spring에서 자동 제공
// json
// request -> object mapper -> object -> method -> object -> object mapper -> json -> response
@JsonInclude(JsonInclude.Include.NON_NULL) -> Json 매핑시 not null 인 항목들만 json으로 변환
ObjectMapper
object -> text는 get 메소드를 활용한다.
text -> object는 default 생성자를 필요로 한다.
objectMapper를 참조할 때는 변수에 없는 항목에 대한 get 메소드를 사용하면 오류가 난다.
@Component
public class ApplicationContextProvider implements ApplicationContextAware{
private static ApplicationContext context;
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
context = applicationContext;
}
public static ApplicationContext getContext(){
return context;
}
}
AOP (Aspect Oriented Programming) - 관점지향 프로그램
스프링 어플리케이션은 대부분 특별한 경우를 제외 하고는 MVC 웹 어플리케이션에서는 Web Layer, Business Layer, Data Layer로 정의
Web Layer: REST API를 제공하며 Client 중심의 로직 적용
Business Layer: 내부 정책에 따른 logic를 개발하며 주로 해당 부분을 개발
Data Layer: 데이터 베이스 및 외부와의 연동을 처리
Annotation | 의미 |
@Aspect | 자바에서 널리 사용하는 AOP 프레임워크에 포함되며, AOP를 정의하는 Class에 할당 |
@Pointcut | 기능을 어디에 적용시킬지 메소드? Annotation? 등 AOP를 적용 시킬 지점을 설정 |
@Before | 메소드 실행하기 이전 |
@After | 메소드가 성공적으로 실행 후, 예외가 발생 되더라도 실행 |
@AfterReturning | 메소드 호출 성공 실행 시(Not Throws) |
@AfterThrowing | 메소드 호출 실패 예외 발생(Throws) |
@Around | Before / after 모두 제어 |