본문 바로가기
Programming

[스프링 입문] 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

by 선의 2022. 3. 10.

1. 프로젝트 환경설정

build.gradle
설정 파일 제공

.gitignore
git 에 필요한 소스코드 파일만 올라감. 빌드 결과물 같은 건 올라가면 안 되는데, 그걸 걸러준다

라이브러리
gradle, maven같은 빌드 관리 도구들은 의존관계가 있는 라이브러리를 가져온다
가져온 라이브러리를 서버에 올리는 식으로 웹 개발을 한다

로그
string-boot-starter-logging
System.out.println(); 대신에 쓴다

View - 동작하는 프로그램 만들어보기
<-- Thymleaf 문법 정리 -->

main/resources/templates/hello.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!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>
</body>
</html>

main/java/hello/hellospring/controller/HelloController.java

@Controller
public class HelloController {
 @GetMapping("hello")
 public String hello(Model model) {
 model.addAttribute("data", "hello!!");
 return "hello";
 }
}

 

2. 스프링 웹 개발 기초

MVC 패턴
프로그램 디자인 패턴 중 하나로, Model, View, Controller의약자. Controller는 Model을 통해 데이터를 가져오고, 데이터를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 클라이언트에게 전달한다.

정적 콘텐츠

html 파일을 그대로 반환한다.

API
데이터를 내보낸다고 생각하면 됨.
@ResponseBody -- 응답하는 Body에 내용을 직접 넣는다는 의미