JAVA 기초 문법 다지기, GitHub 명령어 숙지 / 자바 기초 문법 연습 문제
객체 지향의 4가지 특징 > 캡슐화, 상속, 추상화, 다형성
JAVA 컬렉션 프레임워크 정리
JAVA 제네릭 개념 정리
JAVA 람다 개념 정리
JAVA 스트림 개념 정리
JAVA 쓰레드 개념 정리
Git 커밋 메시지 컨벤션 정리
JAVA - SQL - JDBC 개념 정리
Gitmoji 간단 정리
Spring 입문 - 네트워크 / Web 기초
HTTP / HTTP 특징 / HTTP Message 구조 / HTTP Method
HTTP Method 속성 / HTTP 상태 코드 / HTTP API 설계
HTTP Header / HTTP Header 모음집 / Restful API
Web Server / WAS(Web Application Server) / Web System 구성
Servlet / Servlet 동작 순서 / Servlet Container
Thread / Multi Thread
SSR(Server Side Rendering) / CSR(Client Side Rendering) / 마무리 정리
Spring Framework / Spring Boot
Template Engine / MVC 패턴 개요 / MVC 패턴
MVC 패턴의 문제점 / 프론트 컨트롤러 패턴 / 어댑터 패턴
Spring MVC 구조 / Dispatcher Servlet / Spring MVC의 주요 Interface
Controller Interface / Spring Boot의 Handler Mapping, Handler Adapter / HttpRequestHandler로 알아보는 Spring MVC 동작 순서
View Resolver / Spring Boot의 ViewResolver / InternalResourceViewResolver로 알아보는 Spring MVC 동작 순서
@Slf4j / @Controller VS @RestController
Annotation 자세히 보기 / 다시 보는 @Controller VS @RestController
@RequestMapping / @PathVariable
특정 파라미터 매핑 / Spring이 지원하는 Parameter
Client에서 Server로 Data를 전달하는 방법
@RequestParam / @ModelAttribute
HTTP Message Body(요청) / TEXT
HttpEntity / @RequestBody, @ResponseBody
JSON / HTTPMessageConverter
Server에서 Client로 Data를 전달하는 방법 - 정적 리소스 / View Template / HTTP Message Body
HTTP Message Body 응답 방식 - HttpServletResponse / ResponseEntity<> / @ResponseBody(TEXT, JSON) / ResponseEntity<Object>(JSON)
Layered Architecture 및 적용
Database / 트랜잭션(Transaction) / RDBMS
SQL(Structured Query Language) / MySQL 살펴보기 - 자료형, 제약 조건, JOIN
JDBC / Statement VS Prepared Statement / 웹 보안
Persistence Framework / SQL Mapper - JDBC Template, MyBatis
Spring MVC 구조 / Client → Server 데이터 전송 / Server → Client 데이터 응답 / Spring Annotation / Layered Architecture / PreparedStatement / Persistence Framework
SOLID 원칙 / Spring과 객체 지향
Spring Container / Spring Bean
IOC(제어의 역전, Inversion Of Control) / DI(의존성 주입, Dependency Injection)
싱글톤 패턴(Singleton Pattern) / 싱글톤 패턴의 주의점
@ComponentScan / @Configuration, @Bean / Bean 충돌
의존 관계 주입 / 생성자 주입 / @RequiredArgsConstructor
@Qualifier, @Primary / 수동 VS 자동
검증(Validation) / BindingResult
Bean Validation / Field Error / Validator
에러 메세지 / Object Error
Bean Validation의 충돌 / groups / groups VS DTO 분리
@ModelAttribute, @RequestBody
Spring Container / Spring Bean / IOC&DI / Singleton Pattern / Spring Bean 등록 방법 / 의존 관계 주입 (DI 방식) / Validation
Cookie / Cookie Header
Cookie로 로그인 상태 유지하기 / Cookie 문제점
Session / Servlet의 HttpSession
Spring의 Session / Session 정보
Session TimeOut / Session의 한계 / 마무리 정리
Token / JWT(JSON Web Token)
JWT 인증 / JWT 장단점 / Access Token, Refresh Token
공통 관심 사항(cross-cutting concerns) / Servlet Filter
Filter Interface / Servlet Filter 구현 / 마무리 정리
Cookie / Session / Token / JWT / Filter
객체와 관계형 데이터베이스 / 패러다임 불일치 문제 1 / 패러다임 불일치 문제 2
JPA / JPA를 사용하는 이유 / hibernate.dialect
영속성 컨텍스트 / Entity / Entity 상태
1차 캐시 / 동일성 보장 / 쓰기 지연
변경 감지(Dirty Checking) / flush
단방향 / 양방향 / 양방향 연관 관계의 주인
Spring Boot와 JPA / Spring Data JPA / SimpleJpaRepository
Query Methods / JPA Auditing / Spring Data JPA Auditing
SFeed - Spring Boot 기반 SNS 백엔드 서버 프로젝트
HttpMessageConverter / 우선순위 / 동작 순서와 예시
RequestMappingHandlerAdapter / ArgumentResolver / ReturnValueHandler
HttpMessageConverter 구조 / 요청과 응답 / WebMvcConfigurer
타입 변환 / Converter Interface
Converter 구현 / Spring의 다양한 Converter
ConversionService / DefaultConversionService / ISP(인터페이스 분리 원칙, Interface Segregation Principal)
Formatter / Formatter 적용
FormattingConversionService / Spring이 제공하는 Formatter
HttpMessageConverter / Spring 내부 구조 / Converter, Formatter
연관관계 매핑 / 1 : N 단방향 / 1 : N 양방향
1 : 1 단방향 / 1 : 1 양방향 / 1 : 1 연관관계 외래 키
N : M 연관관계 / N : M 단방향, 양방향 / N : M 매핑의 문제점
테이블 전략 / JPA의 테이블 전략
Entity 조회 / Proxy
Lazy Loading / Eager Loading / Eager Loading 주의점
Cascade / 사용 방법과 주의점 / 고아 객체
트랜잭션 전파
생명주기와 콜백 / InitializingBean, DisposableBean
@Bean 속성 / @PostConstruct, @PreDestroy / Bean Scope
@ExceptionHandler / @ControllerAdvice
JPQL / 동적 쿼리
기본 문법 / 반환 타입 및 결과 / 파라미터 바인딩
Embedded Type / 프로젝션 / Paging
JOIN / CASE / 함수
N + 1 문제 / Entity fetch join / Collection fetch join
@BatchSize / 정리
JPQL 적용 / @PostConstruct 활용