기본적으로 스프링은 프로젝트의 의존성 추가 등의 시작 과정이 매우 복잡하기 때문에, 이를 쉽게
start.spring.io 를 이용하여 만들 수 있다.
위를 보면 의존성에
1. spring web: 스프링으로 웹을 만들기 위한 라이브러리
2. thymeleaf: jsp같은 java/html/xml 기반 템플릿 엔진
3. spring data jpa
4. lombok: 불필요한 반복되는 코드를 줄이기 위한 의존성
5. h2 database: h2 데이터베이스를 사용하는데 필요한 라이브러리
이렇게 5개가 추가된 것을 볼 수 있다.
그 후 프로젝트를 만든 후 open 해준다.
의존성까지 다 추가했다면, 롬복과 여러 어노테이션을 사용하기 위한 준비를 해야한다.
우측 상단 setting->plugins(검색)에서 lombok을 검색 후 다운받고 샛팅을 해준다.
그 후 annotation을 검색 후 enable annotation processing을 체크해준다.
이로써, 프로젝트를 사용할 준비가 끝났다.
============================================================================================
spring 프레임 워크는 주로 mvc의 형태로 웹을 만든다.
m: model
v: view
c: controller
위의 3개 중 view를 수월히 사용하기 위한 환경 설정을 해준다.
view는 주로 html로 나타내어진다.
이 강의에서는 템플릿 엔진으로 thymeleaf를 사용한다.
사실 환경설정은 spring initializer에서 의존성 추가를 함으로 끝났다. 이를 한번 확인해보자.
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.addAttribute("data", "hello!!!");
return "hello";
}
}
컨트롤러를 만들었다.
localhost:8080/hello 라는 url로 요청이 오면, 위의 컨트롤러를 실행한다.
model객체에 key:data value: hello!! 를 저장한 후 hello라는 이름의 view에 model을 넘김과 동시에 실행시켜준다.(렌더링)
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Hello</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<p th:text="'안녕하세요. ' + ${data}" >안녕하세요. 손님</p>
</body>
</html>
그럼 이 view(html 파일)이 실행되며, ${data} = hello!!! 가 출력된다.
주로 thymeleaf를 사용한 동적인 view는 templates에 저장하고, 정적인 view는 static에 저장한다.
<본 글은 김영한님의 강의를 듣고 작성되었습니다.>
'스프링 부트 jpa 프로젝트' 카테고리의 다른 글
엔티티 매핑 분석 (0) | 2024.02.22 |
---|