/////
Search

221107

작성자
김지영
김희정
이현주
날짜
2022/11/07
학습 내용
SpringBoot
텍스트

MVC의 역할과 실행 흐름

사용자가 controller를 조작하면 controller는 model을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 사용자에게 전달하게 된다
깃에 추가할 목록
.gitignore
application.yml
build.gradle
gradlew
gradlew.bat
settings.gradle
이 Application클래스는 앞으로 만들 프로젝트의 메인클래스가 된다.
@SpringBootApplication으로 인해 스프링 부트의 자동 설정, 스프링 Bean 읽기와 생성을 모두 자동으로 설정된다.
특히나 @SpringBootApplication이 있는 위치부터 설정을 읽어가기 때문에 이 클래스는 항상 프로젝트 최상단에 위치해야한다.
main메소드에서 실행되는 SpringApplication.run으로 인해 내장 WAS를 실행한다. 내장 WAS란 별도로 외부에 WAS를 두지 않고 애플리케이션을 실행할 때 내부에서 WAS를 실행하는 것을 이야기한다. 이렇게 되면 항상 서버에 톰캣을 설치할 필요가 없게 되고 스프링 부트로 만들어진 Jar파일(실행 가능한 Java 패키징 파일)로 실행하면 된다.
꼭 스프링 부트에서만 내장 WAS를 사용할 수 있는 것은 아니지만, 스프링 부트에서는 내장 WAS를 사용하는 것을 권장하고 있다.이유는 '언제 어디서나 같은 환경에서 스프링 부트를 배포'할 수 있기 때문이다.
외장 WAS를 쓴다고 하면 모든 서버는 WAS의 종류와 버번, 설정을 일치시켜야만 한다. 새로운 서버가 추가되면 모든 서버가 같은 WAS 환경을 구축해야만 한다. 1대면 다행이지만 30대의 서버에 설치된 WAS의 버전을 올린다고하면 실수할 여지도 많고 시간도 많이 필요한 큰 작업이 될 수도 있다. 그래서 많은 회사에서 내장 WAS를 사용하도록 전환하고 있다.
Controller
DTO
Controller
Entity
Repository
Repository는 Dao(Dao를 통해 DB연결,데이터를 가져오거나 삭제·수정 CRUD를 작업하는 것)라고 불리는 DB Layer접근자이다.
JPA에서는 Repository라고 부르며 인터페이스로 생성한다. 단순히 인터페이스를 생성 후 JpaRepository<Entity 클래스,PK타입>를 상속하면 기본적인 CRUD 메소드가 자동으로 생성된다.