스프링과 JPA 기반 웹 애플리케이션 개발 #6 프로젝트 만들기
해당 내용은 인프런, 스프링과 JPA 기반 웹 애플리케이션 개발의 강의 내용을 바탕으로 작성된 내용입니다.

강의를 학습하며 요약한 내용을 출처를 표기하고 블로깅 또는 문서로 공개하는 것을 허용합니다 라는 원칙 하에 요약 내용을 공개합니다. 출처는 위에 언급되어있듯, 인프런, 스프링과 JPA 기반 웹 애플리케이션 개발입니다.
인텔리J 얼티메이트
메이븐

File > New > Project...에서 생성하면 된다.

Spring Initializr를 이용하여 생성하자.

위와 같이 세팅을 해주었다. jakestudy 라는 이름을 사용하여 만들 것이다.

먼저 개발자 도구에서는 위와 같은 3개를 선택해주자.

Spring Boot DevTools는 개발할 때 재시작 빠르게 해주고 라이브 리로드가 가능하게 해준다.

Lombok은 애노테이션으로 보일러 플레이트 코드를 많이 줄여준다.

Spring Configuration Processor는 우리가 설정 파일을 작성할 때 도움을 주는 의존성이다.


Spring Web은 스프링 MVC를 사용한 웹앱이나 RESTful 웹앱 등을 빌드한다. 아파치 톰캣을 기본 내장 콘테이너로 사용한다.

고도로 커스터마이징 가능한 인증방식이며, 스프링 앱에 대한 액세스 컨트롤 프레임워크이다.

Spring Data JPA, H2 Database, PostgreSQL Driver를 추가한다. 이외에 Query DSL 의존성을 추가해야 하는데 그건 IDE에서는 추가할 수 없어 보이니 나중에 추가하자.

Java Mail Sender를 추가한다.

위와 같이 실행을 해보면 Spring Security에 의해 기본 로그인 페이지가 생성되어 있다.
Spring Security를 설치하면 기본적으로 user가 생성되고 패스워드는 매번 Spring Security에서 새로 만들어준다.

인증을 한 사용자만 모든 요청에 접근할 수 있도록 설정된다.