오늘의 계획 : 백엔드 강의(입문편 수강)
오늘은 백엔드 강의를 수강하면서 tomcat 설치, 스프링부트, gradle vs maven 에 대해서 알아봤다.
최초 템플릿 실행
보여줄 html 파일이 없을 때 나타나는 에러 페이지
에러 코드도 404 다.
컨트롤러
이젠 정말 동적으로 웹페이지를 옮겨 다닐 수 있게 해볼것이다.
처음 java main 파일을 실행하면 왼쪽 이미지 속의 html 파일이 렌더링 된다.
이것은 resources/static 이라는 곳에 있고,
오른쪽 이미지처럼 동적으로 렌더링되는 html 파일은 templates 폴더 안에 있어야 한다.
그런데 그것을 모르고 그냥 static에 다 넣어놨다가 왜 안 되나 한참 고민을 했었다..
package hello.hello_spring.controller;
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", "친구!!");
return "hello";
}
}
컨트롤러에서 리턴 값으로 문자를반환하면 뷰 리졸버('viewResolver')가 화면을 찾아서 처리한다.
스프링 부트 템플릿엔진 기본 viewName 매핑
'resources:templates/' + {ViewName} + '.html'
참고 : 'spring-boot-devtools' 라이브러리를 추가하면, 'html' 파일을 컴파일만 해주면 서버 재시작 없이 View 파일 변경이 가능하다.
인텔리J 컴파일 방법 : 메뉴 - build - Recompile
gradle vs maven
스프링부트를 최초에 시작할 때 gradle과 maven 둘 줄 하나를 선택할 수 있다.
지금 당장 이해한 것은
gradle은 maven에 비해서 커스터마이징을 할 수 있는 폭이 더 넓다. 대신에 초보자가 다루기 어렵다.
maven은 반대로 커스터마이징을 하기 어려운 대신에 입문하는 허들이 낮아서 초보자도 금방 익숙해질 수 있다는 점이다.
그럼에도 이번 스프링 공부는 gradle로 진행하기로 했다.
안드로이드이긴 하지만, 안드로이드에서는 공식적으로 gradle을 밀고 있기도 하기 때문이다.
+ maven
xml로, 커스터마이징이 어려
안정적인 서버/라이브러리 빌드, 전통적인 Java 프로젝트에 적
(의존성 관리가 많이 필요없고,
+gradle
빠르고 유연하며 자동화에 강함
복잡한 백엔드 시스템, 안드로이드 등
(의존성이 복잡하게 얽혀있어도 처리가능, 일반 프로그래밍 언어처럼 일부 동작할 수 있어서 자동화가능)
'활동 > 2025 하계 모각코 (개인)' 카테고리의 다른 글
[2025 하계 모각코] 6주차 1회 계획 및 결과 (3) | 2025.08.10 |
---|---|
[2025 하계 모각코] 4주차 1회 계획 및 결과 (2) | 2025.07.31 |
[2025 하계 모각코] 3주차 2회 계획 및 결과 (2) | 2025.07.24 |
[2025 하계 모각코] 3주차 1회 계획 및 결과 (3) | 2025.07.21 |
[2025 하계 모각코] 2주차 1회 계획 및 결과 (0) | 2025.07.17 |