Programming
[스프링 입문] 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
선의
2022. 3. 10. 16:34
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에 내용을 직접 넣는다는 의미