일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- javascript
- jenkins
- jsp
- ReactJS
- 맛집
- tool
- it
- Web Server
- Design Patterns
- devops
- php
- java
- JVM
- IntelliJ
- laravel
- Spring
- redis
- MySQL
- Oracle
- elasticsearch
- Gradle
- Spring Boot
- 요리
- db
- Spring Batch
- Git
- linux
- springboot
- ubuntu
- AWS
- Today
- Total
아무거나
[Spring Boot] springboot+gradle+bootstrap 프로젝트 생성 본문
스프링 부트는 2014년부터 개발된 스프링의 하위 프로젝트 중 하나입니다. 단독으로 실행이 가능하고(stand-alone), 제품 수준의(production-grade)
스프링 기반 어플리케이션을 제작하는 것을 목표로 진행된 프로젝트입니다. 스프링부트의 주요 기능들은
- 단독 실행이 가능한 수준의 스프링 어플리케이션 제작이 가능
- 내장된 Tomcat, Jetty, UnderTow 등의 서버를 이용해서 별도의 서버를 설치하지 않고 실행이 가능
- 최대한 자동화된 설정을 제공
- XML 설정 없이 단순한 설정 방식을 제공
이러한 특징들을 요약하면 스프링 부트는 '단독으로 빠르게 개발 가능한 스프링 프로젝트' 제작용입니다.
처음 스프링 프레임워크를 사용했을 때 많은 XML파일을 설정해가며 개발을 하던 게 어노테이션으로 간편해졌고,
Java Config를 사용하며 더더욱 단순해졌는데 이것마저 단순화해줄 수 있는 프로젝트가 스프링 부트(Spring Boot)라고 하네요.
스프링 부트는 스프링의 여러 기술들(Data, Batch, Integration, Web, JDBC, Security)을 사용자가 쉽게 사용할 수 있게 해주는 역할을 합니다.
1. 프로젝트 생성
(1) 상단의 Help > Eclipse Marketplace를 선택한다.
(2) Marketplace에서 STS를 검색한다.
(3) 이클립스 버전에 맞게 설치.
(4) File -> New -> Others -> Spring검색 -> Spring Project 선택 -> Spring Starter Project 선택
- dependencies 선택(web, aop, facebook, h2, jdbc, twitter, websocker, mysql, security, jpa, mobile)
- 우선 build.gradle 파일에서 compile("org.springframework.boot:spring-boot-starter-security") 부분을 주석처리 하자(=//) - > 나중에 사용하기로..
(5) gradle support plugin 설치 ( 마켓 -> "gradle support" 검색 -> Buildship Gradle Integration 2.0 설치(코끼리모양) )
* 안되면 Gradle IDE Pack 설치(required 되어있는 것만 설치)
(6) 새로 생성할 프로젝트의 내용을 입력한다.
- name 입력, type:gradle(STS) 선택, packaging:war, group:com.test, package:com.deploy
(7) 프로젝트 생성 시 사용할 라이브러리 선택하는 창이 뜬다.
- 우선 Web만 선택 후 finish
(8) Run As -> Spring Boot App 실행하고 http://localhost:8080 접속해보면 "Whitelabel Error Page" 내용의 페이지를 확인할 수 있다.
2. 컨트롤러 생성
1) src/main/java 아래에 com.deploy.controller 패키지를 생성하고, deployController.java 클래스를 생성한다.
(2) 생성된 클래스에 아래 내용 작성
[내용]
package com.deploy.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.stereotype.Controller;
// import org.springframework.ui.Model;
@Controller
public class deployController {
@RequestMapping("/")
public String deployList(){
// model.addAttribute("name", "hello world");
return "deployList";
}
}
(3) http://localhost:8080 에서 확인
3. 템플릿 엔진 적용(Thymeleaf + bootstrap)
(1) build.gradle에 dependency 추가
[내용]
dependencies {
compile('org.springframework.boot:spring-boot-starter-web')
providedRuntime('org.springframework.boot:spring-boot-starter-tomcat')
testCompile('org.springframework.boot:spring-boot-starter-test')
// 제일 하단의 dependencies에 thymeleaf 관련 의존성 추가
compile('org.springframework.boot:spring-boot-starter-thymeleaf')
}
(2) 의존성 추가 실행
- 프로젝트 우 클릭 -> Gradle(STS) -> Enable Dependency Management
- 프로젝트 우 클릭 -> Gradle(STS) -> Refresh Dependencies
(3) 아래 경로에 맞춰 파일을 생성
- /src/main/resource/static // 정적 파일들 추가(js, css 등..)
- /src/main/resource/templates // html 파일 추가
ex)
[내용] ( = 위 2번에 컨트롤러 기준에 맞춰 생성한 test용 html파일)
<!DOCTYPE html>
<head lang="en">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<link rel="stylesheet" href="../static/deploy.css" th:href="@{deploy.css}"/>
<title>deploy</title>
</head>
<body>
<h1>Hello22</h1>
<div class="demo">Demo Text</div>
</body>
</html>
(4) 부트스트랩 적용
- /src/main/resources/static 에 부트스트랩 관련 파일을 설치한다.
- thymeleaf 에 따른 html을 생성한다.
ex) css 가져오는법
- <link rel="stylesheet" href="../static/deploy/vendor/bootstrap/css/bootstrap.min.css" th:href="@{/deploy/vendor/bootstrap/css/bootstrap.min.css}" />
* 만약 오류가 뜬다면 태그마지막에 / 닫는 부분이 없어서 그럴수도 있다.
ex ) 템플릿 엔진 부트스트랩 적용하기위한 간략한 예제
* http://www.thymeleaf.org/doc/articles/standardurlsyntax.html // 문서 참고
root : /src/main/resources/static/deploy 기준
(1) css 가져오기
- <link rel="stylesheet" href="../static/deploy/vendor/bootstrap/css/bootstrap.min.css" th:href="@{/deploy/vendor/bootstrap/css/bootstrap.min.css}" />
(2) js 가져오기
- <script type="text/javascript" th:href="@{/deploy/vendor/jquery/jquery.min.js}"></script>
'Java & Kotlin > Spring' 카테고리의 다른 글
spring 프로젝트 생성 기본 예제 (0) | 2019.06.18 |
---|---|
RedirectAttributes 사용한 redirect 전송법(not parameter) (0) | 2019.06.17 |
[spring boot] 특정 디렉토리에 있는 파일 목록 읽기 (0) | 2019.05.22 |
[spring boot] Spring Boot에서 에러 페이지 처리하기 (0) | 2019.05.22 |
[SpringBoot] Redundant declaration: @SpringBootApplication already applies given @ComponentScan (0) | 2019.04.15 |