Start Spring Boot란?
스프링부트란??
WSL2을 이용해서 Spring Boot 개발을 위한 환경을 설정해보자!!
프로젝트를 생성하고 실행해보자!
localhost, port, IP, 웹서비스란?
wsl + IntellJ에 devtools 추가하기
URL 매핑, Controller란??
간단한 API를 만들어 보기!
springdoc를 이용해서 swagger를 적용해 보자!
GET, POST, PUT, DELETE를 이용해서 CRUD를 구현해보자!
JPA와 ORM??? H2 DB 적용하고 JPA 추가하기
Entity를 구성하고 확인해보자!
@Column을 더 자세히 알아보고 DAO, DTO, VO, Entity를 알아보자!
DTO를 수정하고 Repository를 추가해서 CRUD를 진행해보자!
URL 프리픽스 및 도메인으로 분류하기!
Service를 구현해보자
* HttpServletRequest * @PathVariable * @RequestParam * @ModelAttribute * @RequestBody
HTTP 상태코드란? 예외처리를 해보자!
500을 REST API를 위해 400으로 바꾸자!
예외 처리하기
@Valid, List 검증하는 방법
XML을 지원해보자!
* URL * Request Parameter * Header * Media Type
HATEOAS 적용하기
필터를 적용해서 원하는 정보만 반환해보자
Actuator, HAL Explorer
매핑은 무엇인가?
Test를 이용해서 데이터 추가하기
Player DTO 수정하고 Controller 추가하기
엔티티가 없는 예외처를 서비스에서 수행하자!
HATEOAS 적용하기
Spring Security 적용하기
간단하게 Security를 설정해보자!
Spring Security를 이용해서 접근 허용하기
Swagger 접근 가능하게 설정하기
InMemoryUserDetailsManager을 이용해서 User을 사용해보자
Password Encoder
DB로 유저 관리하기!
Security 적용 후 h2-console 설정하기
AuthenticationProvider
CORS
CSRF를 설정해보자
인증과 인가란? 역할과 권한이란?
Custom Filter
JWT란? Filter를 이용해서 JWT 사용하기
Method Security
DSL 적용하기
Github를 이용해서 Oauth2 인증을 받아보자
Keycloak를 Docker를 이용해서 사용해보고 Spring boot를 Resource 서버로 활용하여 Client credentials를 사용해보자!
Authorization Code Grant
AOP
Mysql
끝~!