前话:很多人刚学java没多久就开始学springboot,毕竟springboot屏蔽了很多框架的配置,导致搭建一个项目变得比以前简单很多。但建议还是先把基础的框架都熟悉一遍,再用springboot搭建项目会有一种融会贯通的感觉,要不然出问题了很难排查。

SpringBoot定义

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

为什么使用

如果大家之前有用maven搭建过普通项目就会知道,各个框架之间需要配置各式各样的配置文件,而且还要考虑版本冲突。如果你搭建过多个项目你还会知道,大多数框架的配置文件都是大同小异,基本上都是约定俗成的配置,所以springboot的出现大大简化了搭建的时间。那为什么之前没有人想过这个问题呢,主要是因为微服务的兴起。以前一般也就一两个工程,慢点关系不大。可是微服务动不动就几十个工程,所以使用springboot的好处大大提升。

实战

现在我们动手创建一个springboot工程,就知道它为什么香了。建议有idea的用idea创建,如果用eclipse可以去官网生成再maven导入,整个流程都差不多。

新建项目

选择Spring Initializr

springboot的版本不同对应框架的版本也不同,也对应有些框架勾选不了,新的版本也会解决某些问题,比如SpringBoot1旧版本中配置的拦截器对静态资源默认是放行不拦截对,而在SpringBoot 2.0.0及其以上版本的拦截器不会对静态资源默认放行,同样也会进行拦截。这里版本自行选择,然后选上需要的框架。

填上maven的相关信息,springboot打包后的jar包也可以在tomcat运行,不过会在pom文件中生成一项配置。

写上工程名称和位置

如图所示会生成标准的目录机构:

  • l src/main/java 程序开发以及主程序入口
  • l src/main/resources 配置文件
  • l src/test/java 测试程序

建议目录如上,DemoApplication是启动类,建议放在root package根目录下,这点很重要,因为默认情况下@SpringBootApplication扫描范围是注解所在配置类包及子包的类。这里涉及关键注解的工作原理,后续文章会说到。

在启动类run将直接启动tomcat,启动成功说明工程搭建完成。

spring-boot-starter-web依赖启动器的主要作用是提供Web开发场景所需的底层所有依赖,默认使用tomcat启动。

结论

实战完之后应该切身体会到为什么说springboot大大简化了搭建流程,当然便利的同时也带来了其他问题,所以需要了解工作原理以及一些个性化配置如何配置。

SpringBoot(1)-新手入门(详细教程+理解)的更多相关文章

  1. ThinkJS框架入门详细教程(二)新手入门项目

    一.准备工作 参考前一篇:ThinkJS框架入门详细教程(一)开发环境 安装thinkJS命令 npm install -g think-cli 监测是否安装成功 thinkjs -v 二.创建项目 ...

  2. spring入门详细教程(五)

    前言 本篇紧接着spring入门详细教程(三),建议阅读本篇前,先阅读第一篇,第二篇以及第三篇.链接如下: Spring入门详细教程(一) https://www.cnblogs.com/jichi/ ...

  3. Spring入门详细教程(三)

    前言 本篇紧接着spring入门详细教程(二),建议阅读本篇前,先阅读第一篇和第二篇.链接如下: Spring入门详细教程(一) https://www.cnblogs.com/jichi/p/101 ...

  4. Spring入门详细教程(四)

    前言 本篇紧接着spring入门详细教程(三),建议阅读本篇前,先阅读第一篇,第二篇以及第三篇.链接如下: Spring入门详细教程(一) https://www.cnblogs.com/jichi/ ...

  5. Spring入门详细教程(二)

    前言 本篇紧接着spring入门详细教程(一),建议阅读本篇前,先阅读第一篇.链接如下: Spring入门详细教程(一) https://www.cnblogs.com/jichi/p/1016553 ...

  6. Xcode和github入门详细教程

    Xcode和github详细教程! 主要是参考了现在网上的一些资料给没整过的人一个详细的指南. (1)先在github上注册账号,自行解决! (2)在导航栏右上角new一个repository(仓库) ...

  7. SpringBoot入门详细教程

    一.SpringBoot入门 1.SpringBoot简介 SpringBoot是整个Spring技术栈的整合,来简化Spring应用开发,约定大于配置,去繁从简,just run 就能创建一 个独立 ...

  8. ava新手入门详细介绍

    Java总有它的千般好处使你选择它,但这些随便翻翻书或在网上逛一圈就能找到答案.在本文中,笔者把自己学习Java的一些切身体会和过程写出来,供初学者做个参考. 我在学习Java的过程中主要围绕以下几个 ...

  9. Jenkins自动化部署入门详细教程

    大纲 1.背景 在实际开发中,我们经常要一边开发一边测试,当然这里说的测试并不是程序员对自己代码的单元测试,而是同组程序员将代码提交后,由测试人员测试: 或者前后端分离后,经常会修改接口,然后重新部署 ...

随机推荐

  1. 【maven】Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.3:site (default-site)

    问题描述 site一点击就报错,如下 Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.3:site (defau ...

  2. ES常用查询语法

    1.query string search GET /index/type/_search?q=name:zhangsan&sort=age:desc 2.query DSL(Domain S ...

  3. 小程序中支持es7的async语法

    小程序中支持es7的async语法 es7的 async 号称是解决回调的最终⽅案 在⼩程序的开发⼯具中,勾选 es6转es5语法 下载 facebook的regenerator库中的 在⼩程序⽬录下 ...

  4. C++入门教程之二:变量

    C++入门教程之二:变量 变量,顾名思义,意思是变化的量.变量的定义是计算机语言中能储存计算结果或能表示值的抽象概念.一个基本的程序需要变量,因此变量是程序设计中的一大重点. 变量基本结构 var_t ...

  5. oo——第三单元总结

    前言 第三单元是我们学习oo以来第一次接触JML.这一单元的三次作业和以前一样,采用了难度递进的方式,而且前一次作业的设计思路在下一次作业都多多少少有些体现(或者说是在其基础上做出的改进).而且本单元 ...

  6. 《前端运维》一、Linux基础--02用户与权限

    其实说真的,这些基础挺枯燥的,内容呢绝大多数都是些静态的. 上一篇文章我们学习了基本的指令和vim编辑器的操作方法.这篇文章我们主要来学习下Linux中用户的概念和权限相关的知识. 一.用户与用户组 ...

  7. 解析CentOS 8上的Xrdp服务器安装

    解析CentOS 8上的Xrdp服务器安装   Linux系统技术交流QQ群(915246)验证问题答案:刘遄 导读 Xrdp 是 Microsoft 远程桌面协议 (RDP) 的开源实现,允许您以图 ...

  8. dmidecode -t1 | egrep "Manufacturer|Product Name"

    # dmidecode -t1 | egrep "Manufacturer|Product Name" Manufacturer: Loongson Product Name: L ...

  9. Maven 阿里云镜像配置

    1. 为什么要配置 Maven 阿里云镜像 安装 Maven 后默认是从国外 Maven 中央仓库下载内容,而下载速度简直可以用龟速来形容,不仅慢而且还经常出错,简直让人抓狂. 这时国内大厂阿里巴巴, ...

  10. IDEA 快速上手指南(全配置)(Day_23)

    Idea快速入门指南 1.安装 1.1.安装 我们使用的是2017.3.4版本: 双击打开, 选择一个目录,最好不要中文和空格: 然后选择桌面快捷方式,请选择64位: 然后选择安装: 开始安装: 然后 ...