BACKEND/Spring

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 섹션 1(작성 중)

도라프 2022. 11. 13. 23:44

Spring Initailizr에서 프로젝트 만들기


여기서 H2 DATABASE와 lombok도 추가해줘야함.
lombok은 지루하게 반복되는 코드를 제거해주는 라이브러리

https://start.spring.io/ 에서 만들 수 있다. 근데 강의에서의 버전이 달라서 기본 설정되어있는 걸로 버전을 선택했다.
여기선 jpa는 유틸리티성 라이브러리라고 생각하면 된다.

걸 이제 generate 하고 다운 받은 후 압축 풀고 IntelliJ에서 열어주면 되는데.. 맨처음에 열때 라이브러리 생성하는데 10분 이상 걸린다...

라이브러리 다운받다가 컴퓨터 끌 뻔

그렇게 라이브러리가 다 다운이 되고 나면 Application main 함수를 실행할 수 있다.

이렇게 실행시켜준 후 localhost:8080으로 들어갔을 때


이 창이 뜨면 정상적으로 빌드가 된 것이다!

그리고 클래스를 임의로 만들어 제대로 작동하는 지 확인해보고 라이브러리에 대해서 살펴본다.

 

라이브러리 살펴보기

    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    runtimeOnly 'com.h2database:h2'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'

터미널 창에서 서로의 의존 관계를 확인할 수 있다.

 

View 환경 설정

package jpabook.jpashop;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {
    @GetMapping("hello")
    public String Hello(Model model){
    //여기서 model은 view로 데이터를 실어 넘기는 역할
        model.addAttribute("data","hello!!");
        return "hello";
    }

}

templates의 렌더링 html까지 편집하고나면 서버사이드에서 렌더링 된 모습을 확인해볼 수 있다.

만약 렌더링 안하고 순수한 html을 보고 싶다고 하면 resources/static에 html을 추가하면 된다.

그리고 devtools를 사용하면 리컴파일한 내용을 빠르게 확인할 수 있다고 하는데.. 나는 왜 안뜨는 지 모르겠다..

 

 

JPA와 DB설정, 동작 확인

추후에 작성 예정입니다.