一、概念和由来

1、什么是 Spring Boot

Spring Boot 的设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用特定方式来进行配置,从而使开发人员不再需要定义样板化的配置。

Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式。

  • 内置Tomcat和Jetty容器
  • Starter pom 简化项目配置
  • 大型项目的非功能特性,如:安全、指标、健康监测、外部配置等
  • 没有代码生成和xml配置文件

2、内置 Servlet Container

  • tomcat8 + servelt规范3.1
  • jetty9.3+ servelt规范3.1
  • undertow1.3+ servelt规范3.1

3、开发调试工具

  • SpringBoot DevTools

二、创建 gradle 工程

1、创建 gradle 工程:http://start.spring.io/

你可以通过 Spring Initializr 来创建一个空的项目,也可以手动创建。

2、构建工程

要采用***,否则会慢的让你崩溃的!!

(1)修改gradle下载地址

(2)、使用阿里云的maven库

buildscript {
ext {
springBootVersion = '1.5.7.RELEASE'
}
repositories {
//mavenCentral()
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
//maven { url "https://repo.spring.io/snapshot" }
//maven { url "https://repo.spring.io/milestone" }
}

dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

group = 'com.tianhe.example.springboot'
version = '0.0.1-SNAPSHOT'

//生成的jar包包名和版本
jar {
baseName = 'HelloGradle'
version = '0.1.0'
}

//设置jdk的版本
sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
//mavenCentral()
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
//maven { url "https://repo.spring.io/snapshot" }
//maven { url "https://repo.spring.io/milestone" }
}

[compileJava,compileTestJava,javadoc]*.options*.encoding = "utf-8"

configurations.all {
exclude module: 'slf4j-jcl'
exclude module: 'slf4j-jdk14'
exclude module: 'slf4j-nop'
exclude module: 'slf4j-simple'
exclude module: 'slf4j-log4j12'
exclude module: 'log4j'
exclude module: 'commons-logging'
exclude module: 'commons-logging-api'
}

dependencies {

compile('org.slf4j:slf4j-api:1.7.15') {
force = true
}
compile('org.slf4j:jcl-over-slf4j:1.7.15') {
force = true
}
compile('org.slf4j:log4j-over-slf4j:1.7.15') {
force = true
}
compile('org.slf4j:jul-to-slf4j:1.7.15') {
force = true
}

compile('ch.qos.logback:logback-core:1.1.7') {
force = true
}
compile('ch.qos.logback:logback-classic:1.1.7') {
force = true
}

compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.boot:spring-boot-starter-thymeleaf")
compile("org.springframework.boot:spring-boot-starter-data-jpa")
compile("org.springframework.boot:spring-boot-starter-actuator")

compile('com.fasterxml.jackson.core:jackson-databind:2.7.4')
compile('com.fasterxml.jackson.core:jackson-core:2.7.4')
compile('com.fasterxml.jackson.core:jackson-annotations:2.7.4')

compile('commons-httpclient:commons-httpclient:3.1')
compile('org.htmlparser:htmlparser:1.6')

compile "commons-lang:commons-lang:2.6"
compile "commons-io:commons-io:2.4"
compile "commons-codec:commons-codec:1.5"

runtime("mysql:mysql-connector-java")

testCompile('org.springframework.boot:spring-boot-starter-test')
}

3、前端代码

4、启动应用

在IDE中直接直接执行main方法,然后访问http://localhost:8080即可。

三、附录

1、thymeleaf Exception parsing document: template="xxxx"错误

Thymeleaf模板引擎,遇到不闭合标签会报这个错误,很是蛋疼啊。最后发现是自动生成的meta标签没有关闭,太太坑了。

网上搜来的解决方案:

(1). 添加maven依赖

<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
<version>1.9.22</version>
</dependency>
(2). 更改application.properties属性

spring.thymeleaf.mode=LEGACYHTML5

转载于:https://www.cnblogs.com/lexiaofei/p/6806826.html

SpringBoot 概念和起步相关推荐

  1. Java工程师之SpringBoot系列教程前言目录

    前言 与时俱进是每一个程序员都应该有的意识,当一个Java程序员在当代步遍布的时候,你就行该想到我能多学点什么.可观的是后端的框架是稳定的,它们能够维持更久的时间在应用中,而不用担心技术的更新换代.但 ...

  2. springboot pom文件指定jdk_Spring Boot 入门

    SpringBoot 基本应用 约定优于配置 约定优于配置(Convention over Configuration),又称按约定编程,是一种软件设计范式. 本质上是说,系统.类库或框架应该假定合理 ...

  3. SpringBoot的基础

    概念 Spring的优缺点 1. 优点(AOP和IOC简化开发)Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品.无需开发重量级的En ...

  4. springboot test_精益求精!Spring Boot 知识点全面回顾,带你重新细读源码!

    作者:cyd_0619 原文:https://blog.csdn.net/cyd_0619 约定优于配置 Build Anything with Spring Boot:Spring Boot is ...

  5. SpringBoot/Spring Cloud/Docker

    第九阶段模块一 SpringBoot 1. SpringBoot基本应用 1.1 约定优于配置 ​ 官方: Spring Boot 是所有基于 Spring 开发的项目的起点.Spring Boot ...

  6. 自学之SpringBoot

    springboot 简介 ​ Spring Boot 是 Spring 家族中的一个全新的框架,它用来简化 Spring 应用程序的创建和开发过程,也可以说 Spring Boot 能简化我们之前采 ...

  7. SpringBoot学习(一)

    2019独角兽企业重金招聘Python工程师标准>>> (一) 第一个SpringBoot程序 工作了挺久的,已学到的技术也没有系统性的整理一下,刚好最近在使用SpringBoot搭 ...

  8. springboot starter工作原理_springboot基础知识集结,你get到了吗

    导读 首发于公众号:JAVA大贼船,原创不易,喜欢的读者可以关注一下哦!一个分享java学习资源,实战经验和技术文章的公众号! 一.SpringBoot的特点 Spring Boot 主要目标是: 为 ...

  9. 【SpringBoot零基础案例01】【IEDA 2021.1】如何创建一个SpringBoot框架web项目

    一.创建一个空项目 点击[File]- [New]- [Project-],新建一个空项目 选择[Empty Project]点击[Next] 填写项目名称,选择项目本地存储路径,点击[Finish] ...

最新文章

  1. rsatool使用步骤图解_图解360系统重装大师如何使用
  2. python化学题_中国大学mooc《化学教学论(朱汝葵 陈思静 汤希雁)》考试期末答案高校邦《Python程序设计基础【实境编程】》课后作业答案...
  3. [BUUCTF-pwn]——picoctf_2018_shellcode
  4. 组合CPU和DRAM
  5. frida hook java层常用模板
  6. mybatis和hibernate的一级、二级缓存
  7. 禁用当前的账户win7_系统小技巧:服务客人 开启Windows 10来宾账户
  8. OD-标志寄存器判断语句对照表(汇编标志位寄存器对照表)
  9. Yaml锚点和别名*
  10. ls命令 文件和目录属性
  11. Android IPC —— AIDL的原理
  12. guid主分区表损坏如何处理_guid主分区表损坏如何处理_windows10系统硬盘分区表损坏修复教程...
  13. 『深度应用』首届中国心电智能大赛复赛开源(第三十一名,得分0.841484)
  14. 常用类库-java.lang.String
  15. Ubuntu 22.04 桌面美化之Mac Big Sur风格
  16. STM32F407的时钟
  17. MeVisLab模块化医学图像处理可视化软件
  18. Chrome浏览器中使用 iframe 嵌入网页导致视频不能全屏的问题解决方法
  19. NameNode概述
  20. 【FinE】在险价值(VaR)计算

热门文章

  1. HighChart学习-更新数据data Series与重绘
  2. LomoX 桌面UI框架更新,增加资源管理
  3. 找出字符串中所有数字
  4. c语言指针要点,C语言指针的重点有哪些?
  5. sqoop架构_SQOOP架构的深入介绍
  6. 零基础学习Java培训有什么攻略
  7. leetcode--链表的设计--python
  8. springmvc配置DispatcherServlet拦截url注意事项
  9. 与HTTP关系密切的协议:IP、TCP、DNS
  10. JXJJOI2018_T1_market