Notice
Recent Posts
Link
Tags
- springboot
- static
- select
- spring
- 스프링부트
- 1차원 배열
- SSL
- 자바
- spring mvc
- AWS
- mysql
- 프로그래머스
- jpa
- string
- ORM
- nginx
- hibernate
- DI
- java
- 문자열
- sql
- Docker
- Django
- spring security 6
- join
- spring boot
- @transactional
- PYTHON
- 데이터베이스
- 스프링
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Archives
개발하는 자몽
스프링 부트 공부 (3), View 환경설정, 빌드 및 실행 본문
필요한 것 찾는 방법
- spring.io 접속
- Project > Spring Boot > Learn : 버전에 맞는 reference documentation 에서 잘 찾기..
스프링 부트 Welcome Page 기능
src > main > resources > static에 index.html 생성해서 아래 내용 입력 후 run → localhost:8080 접속하면
<!DOCTYPE HTML>
<html>
<head>
<title>Hello</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
Hello
<a href="/Hello">hello</a>
</body>
</html>
정적 페이지 : 위 html파일을 웹서버가 웹브라우저에 넘겨줌(응답), no 프로그래밍 그냥 파일을 던져준 것
템플릿 엔진(Template Engines)을 사용해서 위에꺼 모양 바꾸기 가능 → 나는 Thymeleaf 사용
src > main > Hello.hellospring(package) > controller(란 이름의 package 생성) > HelloController(Java class 파일 생성)
- @GetMapping
- HTTP GET 메소드
- /hello(url)에 매칭됨
src > main > resources > templates > hello.html(파일 생성)
run → localhost:8080/hello
동작 원리
큰 틀 : 웹 브라우저 ↔ 스프링 부트(내장 tomcat 서버 → 스프링 컨테이너)
더 깊게 :
웹 브라우저 : localhost:8080/hello → 스프링 부트(내장 tomcat 서버 → 스프링 컨테이너) : hello.html(변환 후)) → 웹브라우저
- 스프링 부트에서 일어나는 일 (내림차순으로 일어남)
- 내장 tomcat 서버가 스프링 컨테이너에게 /hello(url) 전달
- 스프링 컨테이너
- helloContorller(return : hello, model(data : hello!!))
- viewResolver : template/hello.html(Thymeleaf 템플릿 엔진 처리)
자세한 내용
- 웹 브라우저 : /hello → 내장 tomcat 서버 → HelloController → @GetMapping("hello")된 public String hello(Model model) 메소드 실행
- model(인자)가 넘어오면 addAttribute("data", "hello!!") 실행 → "hello"(resources>templates>hello.html과 동일, 스프링이 hello.html을 찾아서 렌더링 함) 반환. 즉, hello.html 실행
- Controller에서 반환 값으로 문자를 반환하면 viewResolver가 화면을 찾아서 처리
- 스프링 부트 템플릿엔진 기본 viewName 매핑 : 'resourcees:templates/' + {ViewName} + '.html'
윈도우에서 빌드하고 실행하기
IntelliJ에서 서버 실행중이라면 종료 후 하기, 실행 상태에서 또 실행하려고 하면 이미 사용중인 포트라고 뜹니다.
- 프로젝트 폴더가 있는 곳으로 이동
- 터미널에 gradlew.bat build 입력
- cd build
- cd libs
- java -jar 명령어로 .jar 파일 실행
ex) java -jar hello-spring.0.0.1-SNAPSHOT.jar - 서버 실행 확인 ~~
localhost:8080 - 나중에 종료하고 bradlew.bat clean 입력(청소~)
서버 배포 시에는 위 .jar 파일만 배포하면 됨
'Java & Kotlin > Spring' 카테고리의 다른 글
[Spring, 이클립스] Gradle 프로젝트 생성, Spring MVC 환경 구축 (2) | 2022.01.06 |
---|---|
스프링 부트 공부 (5), 회원 관리 예제 - 백엔드 (0) | 2022.01.04 |
스프링 부트 공부 (4), 스프링 웹 개발 기초 (0) | 2022.01.03 |
스프링 부트 공부 (2), 라이브러리 (0) | 2022.01.03 |
스프링 부트 공부 (1), 프로젝트 생성 (0) | 2022.01.03 |
Comments