1、SpringBoot简介java
1.1 什么是SpringBootweb
说到spring系列,可能你们都很熟悉,spring、springmvc,美之名曰:spring全家桶,那么springboot其实也是全家桶里边的,boot有引导,引擎的意思,springboot其实就能够看做是一个引导驱动同样,为了可以让咱们顺利的建立spring应用而引进的一个框架,它能够作到让咱们零配置的去启动一个应用,springboot其实也是一组jar包,引入这些jar以后,而后就能够帮你自动构建项目而且发布、运行项目。
spring
其实springboot只是为了默认配置了不少东西,它内部帮咱们管理整合了不少开发框架的使用方式,试想咱们以前开发一个spring应用,要在xml中配置不少东西,启动部署时,还要有tomcat环境,还有什么日志配置的,反正都是各类配置,这种配置几乎都是前篇一概,繁琐不堪,咱们就急需把这些配置省略掉,由于都是固定模式的东西,springboot就这样来了,简化了甚至能够说去除了咱们全部的配置,(其实内部本身用约定大于配置的方式帮咱们配置了),真正的一键搭建,一键运行,可能你用了springboot以后,就再也见不到xml文件了。apache
稍微总结一下:tomcat
springboot是一组jar包,咱们称它为springboot框架,它大大简化了咱们开发spring应用的过程。springboot
2、SpringBoot上手使用服务器
前边咱们已经说到,springboot其实就是一组jar包,spring-boot-*.jar,因此咱们彻底能够像使用传统jar包那样使用springboot,springboot不依赖任何建立工具,甚至只需一个记事本就能够开发咱们的程序,不过springboot的jar包,依赖就有不少了,这样的话咱们一个一个引入也是不行的,因此这里咱们要使用maven工具来帮助咱们管理包的依赖,其它的就不须要了。mvc
检查maven环境和jdk环境,这两点就不说了,基本是开发必须的:app
2.1 建立项目结构框架
根据本身习惯建立一个目录,个人目录以下,目前是空目录:
这里我先用VSCode来编辑项目中的一些文件,用VSCode打开这个目录,并添加一个名称为pom.xml的文件,复制以下内容:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 <groupId>com.springbootstudy</groupId> 6 <artifactId>springboot-helloworld</artifactId> 7 <version>0.0.1-SNAPSHOT</version> 8 <parent> 9 <groupId>org.springframework.boot</groupId> 10 <artifactId>spring-boot-starter-parent</artifactId> 11 <version>1.4.0.RELEASE</version> 12 </parent> 13 </project>
其中关键代码,来引入springboot的jar包,这是springboot启动所须要的最基本的jar包,若是用idea工具的话,能够点进去看到依赖不少的jar包。
1 <parent> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-starter-parent</artifactId> 4 <version>1.4.0.RELEASE</version> 5 </parent>
2.2 执行mvn命令
在当前springboot-helloworld命令下执行mvn package 命令,maven会根据pom.xml中的配置去解析下载还原包,到此为止,springboot所须要的基础包及其依赖已经还原好了,其实这一步能够再咱们写完代码以后作,这里只是看一下maven的效果,说明没什么问题。
2.3 添加web启动器
到目前为止,咱们尚未说明springboot要构建的是什么样的一个项目,这里咱们添加一个web启动器,也就是 spring-boot-starter-web 包,说明了咱们是要构建一个web应用。
1 <dependencies> 2 <dependency> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot-starter-web</artifactId> 5 </dependency> 6 </dependencies>
其实这个包夜依赖了不少包,好比:spring-webmvc、spring-web、tomcat什么的, 只是咱们这里看不到,这种依赖也是springboot提早为咱们构建好的。如今pom.xml的结构以下:
2.4 编写代码
maven默认有约定,源代码须要在src/main/java下,因此咱们须要手动创建这样一个目录,而后添加一个HelloWorld.java的文件。
1 import org.springframework.boot.*; 2 import org.springframework.boot.autoconfigure.*; 3 import org.springframework.stereotype.*; 4 import org.springframework.web.bind.annotation.*; 5 @RestController 6 @EnableAutoConfiguration 7 public class HelloWorld { 8 @RequestMapping("/") 9 String home() { 10 return "Hello World!"; 11 } 12 public static void main(String[] args) throws Exception { 13 SpringApplication.run(HelloWorld.class, args); 14 } 15 }
在springboot-helloworld目录下打开cmd,运行 mvn spring-boot:run,来启动咱们的web应用,启动成功,会有springboot的banner输出:
访问http://localhost:8080,出现Hello World,到如今为止,就这几个步骤咱们就启动了咱们的web应用,没有出现tomcat,没有出现部署,接下来咱们继续写咱们的业务逻辑代码就能够了。
2.5 打包部署
毕竟最后咱们仍是要在生产环境上运行咱们的web应用,这样启动可不行,咱们须要安装打包插件,插件会自动把咱们项目打包成一个可执行的jar包,那么咱们经过java -jar直接执行就能够了,也不用在服务器上安装tomcat什么的。
安装插件,在pom.xml中添加插件依赖:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
执行 mvn package 命令打包,在target目录里边会出现一个springboot-helloworld-0.0.1-SNAPSHOT.jar的文件
咱们注意到这个文件很大,难不成我写一个helloworld就这么大,其实里边有不少依赖包,都打在一块儿了,这样咱们只要拿着这个一个包到哪里都能运行咱们的web项目,服务器能够不装tomcat就能启动,咱们也能够猜到里边确定内置了tomcat,固然须要安装java运行环境。(废话...)
咱们用360压缩打开,能够看到里边咱们熟悉的包依赖:
接着咱们把上边那个jar直接复制到桌面上改一个名字,而后直接运行命令 java -jar springboot-helloworld.jar
输出以下,而后访问http://localhost:8080/,出现Hello World的输出,以前同样。
3、总结
以上就是springboot的最原始的搭建方式,看起来很是的简单,咱们基本上没有什么配置文件,能够说是零配置,咱们直接写的代码,固然springboot这样的框架也是入门容易精通难,由于里边的东西还有不少不少,接下来的东西咱们之后继续学习,总结springboot带给咱们了一种飞通常的开发体验,因此咱们就立刻要起飞了。