Spring Boot + Thymeleaf 创建web项目
来源:互联网 发布:徐静蕾开淘宝店么 编辑:程序博客网 时间:2024/06/13 07:40
本篇文章将引导你创建一个简单的Spring Boot web程序示例,涉及到的组件有:嵌入的Tomcat + Thymeleaf 模板引擎,可执行的 JAR 文件包。
开发工具:
1.Spring Boot 1.5.3.RELEASE
2.Spring 4.3.8.RELEASE
3.Thymeleaf 2.1.5.RELEASE
4.Tomcat Embed 8.5.14
5.Maven 3
6.Java 8
1.创建项目
eclipse -- File -- New -- Maven Project
2.项目的目录结构如下所示:
手动创建如下的文件夹及文件
3.项目依赖 pom.xml
spring-boot-starter-thymeleaf 这个依赖包将为你提供一切需要的东西来开发一个 Spring + Thymeleaf 程序
pom.xml 文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.thinkingingis</groupId> <artifactId>spring-boot-web-thymeleaf</artifactId> <version>0.0.1-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.3.RELEASE</version></parent><properties><java.version>1.8</java.version></properties><dependencies> <!-- 核心依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency><!-- bootstrap 依赖--><dependency><groupId>org.webjars</groupId><artifactId>bootstrap</artifactId><version>3.3.7</version></dependency></dependencies><build><plugins><!-- macOS 使用如下plugin 这是告诉可执行的jar文件位置,具体情况视你jdk的安装位置而定--><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.3</version><configuration><fork>true</fork><executable>/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin/java</executable></configuration></plugin><!--windows 系统 使用如下plugin --><!-- <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin> --></plugins></build> </project>
显示项目的依赖:在终端输入mvn dependency: tree
$ mvn dependency:tree[INFO] Scanning for projects...[INFO][INFO] ------------------------------------------------------------------------[INFO] Building spring-boot-web-thymeleaf 0.0.1-SNAPSHOT[INFO] ------------------------------------------------------------------------[INFO][INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @ spring-boot-web-thymeleaf ---[INFO] org.thinkingingis:spring-boot-web-thymeleaf:jar:0.0.1-SNAPSHOT[INFO] +- org.springframework.boot:spring-boot-starter-thymeleaf:jar:1.5.3.RELEASE:compile[INFO] | +- org.springframework.boot:spring-boot-starter:jar:1.5.3.RELEASE:compile[INFO] | | +- org.springframework.boot:spring-boot-starter-logging:jar:1.5.3.RELEASE:compile[INFO] | | | +- ch.qos.logback:logback-classic:jar:1.1.11:compile[INFO] | | | | \- ch.qos.logback:logback-core:jar:1.1.11:compile[INFO] | | | +- org.slf4j:jcl-over-slf4j:jar:1.7.25:compile[INFO] | | | +- org.slf4j:jul-to-slf4j:jar:1.7.25:compile[INFO] | | | \- org.slf4j:log4j-over-slf4j:jar:1.7.25:compile[INFO] | | +- org.springframework:spring-core:jar:4.3.8.RELEASE:compile[INFO] | | \- org.yaml:snakeyaml:jar:1.17:runtime[INFO] | +- org.springframework.boot:spring-boot-starter-web:jar:1.5.3.RELEASE:compile[INFO] | | +- org.springframework.boot:spring-boot-starter-tomcat:jar:1.5.3.RELEASE:compile[INFO] | | | +- org.apache.tomcat.embed:tomcat-embed-core:jar:8.5.14:compile[INFO] | | | +- org.apache.tomcat.embed:tomcat-embed-el:jar:8.5.14:compile[INFO] | | | \- org.apache.tomcat.embed:tomcat-embed-websocket:jar:8.5.14:compile[INFO] | | +- org.hibernate:hibernate-validator:jar:5.3.5.Final:compile[INFO] | | | +- javax.validation:validation-api:jar:1.1.0.Final:compile[INFO] | | | +- org.jboss.logging:jboss-logging:jar:3.3.1.Final:compile[INFO] | | | \- com.fasterxml:classmate:jar:1.3.3:compile[INFO] | | +- com.fasterxml.jackson.core:jackson-databind:jar:2.8.8:compile[INFO] | | | +- com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile[INFO] | | | \- com.fasterxml.jackson.core:jackson-core:jar:2.8.8:compile[INFO] | | +- org.springframework:spring-web:jar:4.3.8.RELEASE:compile[INFO] | | | +- org.springframework:spring-aop:jar:4.3.8.RELEASE:compile[INFO] | | | \- org.springframework:spring-beans:jar:4.3.8.RELEASE:compile[INFO] | | \- org.springframework:spring-webmvc:jar:4.3.8.RELEASE:compile[INFO] | | \- org.springframework:spring-expression:jar:4.3.8.RELEASE:compile[INFO] | +- org.thymeleaf:thymeleaf-spring4:jar:2.1.5.RELEASE:compile[INFO] | | +- org.thymeleaf:thymeleaf:jar:2.1.5.RELEASE:compile[INFO] | | | +- ognl:ognl:jar:3.0.8:compile[INFO] | | | +- org.javassist:javassist:jar:3.21.0-GA:compile[INFO] | | | \- org.unbescape:unbescape:jar:1.1.0.RELEASE:compile[INFO] | | \- org.slf4j:slf4j-api:jar:1.7.25:compile[INFO] | \- nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:jar:1.4.0:compile[INFO] | \- org.codehaus.groovy:groovy:jar:2.4.10:compile[INFO] +- org.springframework.boot:spring-boot-devtools:jar:1.5.3.RELEASE:compile[INFO] | +- org.springframework.boot:spring-boot:jar:1.5.3.RELEASE:compile[INFO] | | \- org.springframework:spring-context:jar:4.3.8.RELEASE:compile[INFO] | \- org.springframework.boot:spring-boot-autoconfigure:jar:1.5.3.RELEASE:compile[INFO] \- org.webjars:bootstrap:jar:3.3.7:compile[INFO] \- org.webjars:jquery:jar:1.11.1:compile[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 2.139 s[INFO] Finished at: 2017-06-10T14:11:29+08:00[INFO] Final Memory: 21M/226M[INFO] ------------------------------------------------------------------------
出现 BUILD SUCCESS 表示成功。
4.Spring Boot
4.1添加@SpringBootApplication注解,运行这个类完成spring boot web程序的启动。
package org.thinkingingis;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class SpringBootWebApplication {public static void main(String[] args){SpringApplication.run(SpringBootWebApplication.class, args);}}4.2 添加controller类 WelcomeController.java
package org.thinkingingis;import java.util.Map;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class WelcomeController {@Value("${welcome.message:test}")private String message = "Hello ThinkingInGIS";@RequestMapping("/")public String welcome(Map<String, Object> model){model.put("message", this.message);return "welcome";}}5. 添加thymeleaf 资源
5.1将thymeleaf模板文件存放在 src/main/resources/templates/ 下
welcome.html
<!DOCTYPE HTML><html xmlns:th="http://www.thymeleaf.org"><head><title>Spring Boot + Thymeleaf Hello World 示例</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="webjars/bootstrap/3.3.7/css/bootstrap.min.css" /></head><body><nav class="navbar navbar-inverse"><div class="container"><div class="navbar-header"><a class="navbar-brand" href="#">Spring Boot</a></div><div id="navbar" class="collapse navbar-collapse"><ul class="nav navbar-nav"><li class="active"><a href="#">Home</a></li></ul></div></div></nav><div class="container"><div class="starter-template"><h1 style="color: #4EE2EC">Spring Boot Web Thymeleaf 示例</h1><h2 style="color: #ED594E"><span th:text="'Message: ' + ${message}"></span></h2></div></div><script type="text/javascript" src="webjars/bootstrap/3.3.7/js/bootstrap.min.js"></script></body></html>5.2 properties文件,放在src/main/resources/ 文件夹下
application.properties
welcome.message: Hello ThinkingInGIS ~ | \u5FAE\u4FE1\u516C\u4F17\u53F7\uFF1A ThinkingInGIS
6. 启动
6.1进入项目目录下:/Users/gisboy/Documents/workspace/spring-boot-web-thymeleaf
6.2输入 mvn spring-boot:run
$ mvn spring-boot:run . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.5.3.RELEASE)出现 BUILD SUCCESS 表示成功
6.3访问 http://localhost:8080
至此,一个简单的spring boot + thymeleaf 程序 就搭建好了。
(如遇到问题,请留言给作者,以便共同探讨gis知识。thinkingingis@qq.com)
在下开通了一个微信公众号: ThinkingInGIS
欢迎大家关注:)
- Spring Boot + Thymeleaf 创建web项目
- spring boot web 模板thymeleaf篇
- Spring Boot 整合 Thymeleaf 完整 Web 案例
- Spring Boot 整合 Thymeleaf 完整 Web 案例
- Spring Boot + JSP 创建web项目
- Spring boot项目整合thymeleaf和shiro
- SpringBoot + Thymeleaf + JPA创建一个web项目
- 通过Spring Boot三分钟创建Spring Web项目
- 通过Spring Boot三分钟创建Spring Web项目
- 创建spring boot 项目
- [spring-boot] thymeleaf 热交换
- Spring Boot + Gradle + Thymeleaf
- spring boot 整合 thymeleaf
- spring boot vue Thymeleaf
- spring boot thymeleaf 用法
- Spring Boot使用Thymeleaf
- Spring-Boot thymeleaf异常
- spring-boot集成thymeleaf
- Tablyou添加分割线问题
- 大数据之红黑树(哈希表)
- FOS的消息队列管理
- 读取文件第k条记录打印到屏幕
- C# 退出程序再重新启动
- Spring Boot + Thymeleaf 创建web项目
- IDEA-Maven整合SSM框架,超详细教程(Spring+SpringMVC+Mybatis)
- qt creator调试问题 按f10后进入汇编页面
- 完成你的第一个JavaWeb项目——IDEA+Tomcat配置
- HTTP协议学习
- 【Ionic】 表单和输入框
- PhpExcel 的导入导出
- 数据科学学习笔记8 --- 分类(有监督的学习)
- Android基础之Android四大组件