1、基本概念

Spring的出现对于企业级应用来说是一个福音,它让企业级应用开发更加地简单。但是随着Spring的不断发展,它也慢慢变得越来越重。即使apache出品的maven工具能够使得项目创建、管理更加地轻便,但对于开发人员来说依旧存在负担:

1)不得不处理xml等配置文件;

2)不得补处理各种依赖包;

而Spring的作者们也意识到了这一点,于是Springboot出现了。

Springboot出现的意义就在于快速创建并运行一个应用程序,如果之前我们需要十分钟去创建一个简单的spring项目,那么现在我们只需要十几秒钟就能创建一个springboot的应用程序。

2、环境

本文编写的时候,springboot的稳定版本是:2.0.1;

它需要:

1)JDK1.8+;

2)maven3.2+或gradle4+;

3) spring framework 5.0.5.release;

开发工具使用:

1)intellij IDEA;

2) Spring tool suite(STS);

3、构建Spring应用

1)打开IDEA开发工具,默认带了STS套件;

2)new -> project -> Spring Initializer -> next -> 填写项目信息 -> 勾选web -> 填写项目名称和路径 -> finish

当maven处理完毕,一个简单的Springboot项目就已经构建好了。

4、测试

我们在类路径下编写一个controller

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
public class SampleController { @RequestMapping(value = "hello")
public String hello(){
return "Hello World";
}
}

运行main方法启动程序

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class SpringbootApplication { public static void main(String[] args) {
SpringApplication.run(SpringbootApplication.class, args);
}
}

控制台上看到,我们在8080端口下tomcat运行成功了(备注:springboot2.0.1内置了tomcat8.5,servlet版本是3.1我们并不需要去配置本机的tomcat)

Tomcat started on port(s): 8080 (http) with context path ''
2018-04-14 22:06:26.584 INFO 16752 --- [main] cn.lay.SpringbootApplication: Started SpringbootApplication in 6.587 seconds (JVM running for 8.949)

在浏览器输入

http://localhost:8080/hello

显示

Hello World

一个简单的基于springboot的web应用程序就完成了

5、打为jar包运行

pom.xml 文件的打包声明为:

<packaging>jar</packaging>

打包插件为:

<!-- Package as a executable jar -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

我们运行maven的package命令,在编译目录下打包出了一个jar文件;

我们使用命令java -jar 文件名.jar 运行该jar文件(也可以直接使用IDEA开发工具运行)

运行成功以后,浏览器输入http://localhost:8080/hello测试;

最后使用ctrl + c 退出运行

一、快速构建Springboot应用的更多相关文章

  1. 【spring-boot】快速构建spring-boot微框架

    spring-boot是一个快速构建环境的一套框架,其设计理念是尽可能的减少xml的配置,用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义 ...

  2. Springboot(一):使用Intellij中的Spring Initializr来快速构建Spring Boot工程

    使用Intellij中的Spring Initializr来快速构建Spring Boot工程 New---Project 可以看到图所示的创建功能窗口.其中Initial Service Url指向 ...

  3. springboot:快速构建一个springboot项目

    前言: springboot作为springcloud的基础,springboot的热度一直很高,所以就有了这个springboot系列,花些时间来了解和学习为自己做技术储备,以备不时之需[手动滑稽] ...

  4. SpringBoot系列——快速构建项目

    前言 springboot官方参考指南:https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/ Spri ...

  5. 带你十分钟快速构建好 SpringBoot + SSM 框架

    目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵活目前受到了许多人的青睐.而 SpringBoot 的轻量化,简化项目配置, 没有 XML 配置要求等优点现在也得到了 ...

  6. 快速构建一个 Springboot

    快速构建一个 Springboot 官网:http://projects.spring.io/spring-boot/ Spring Boot可以轻松创建可以“运行”的独立的,生产级的基于Spring ...

  7. SpringBoot:使用IDEA快速构建项目

    西部开源-秦疆老师:基于SpringBoot 2.1.6 的博客教程 秦老师交流Q群号: 664386224 未授权禁止转载!编辑不易 , 转发请注明出处!防君子不防小人,共勉! SpringBoot ...

  8. SpringBoot 快速构建微服务体系 知识点总结

    可以通过http://start.spring.io/构建一个SpringBoot的脚手架项目 一.微服务 1.SpringBoot是一个可使用Java构建微服务的微框架. 2.微服务就是要倡导大家尽 ...

  9. 基于Swagger+SpringBoot快速构建javaweb项目

    章节导航 SpringBoot&Swagger简介 数据模型和接口定义 项目框架生成 业务逻辑实现 项目源码地址 github项目路径:https://github.com/Vikezhu/s ...

随机推荐

  1. [BZOJ4530][Bjoi2014]大融合(LCT)

    传送门 大佬们似乎都是用树剖+并查集优雅地A了此题 然后我太弱了,只能打打LCT的板子 虽然的确可以挺无脑的A掉…… 不过至少这题教了我该怎么维护LCT上虚子树的信息,具体看这里 首先,答案很明显是断 ...

  2. Docker 下系统日志恢复

    众所周知,docker 是一款进程级虚拟机.上文我们已经分析解释了该如何使用,本文针对日志消失问题进行恢复与解释. Docker 可以理解为阉割版的系统,内部功能不全.可以通过组件安装进行基本功能恢复 ...

  3. UIScreen和UIWindow

    UIScreen 和UIWindow UIScreen object defines the properties associated with a hardware-based display 就 ...

  4. P4383 [八省联考2018]林克卡特树lct 树形DP+凸优化/带权二分

    $ \color{#0066ff}{ 题目描述 }$ 小L 最近沉迷于塞尔达传说:荒野之息(The Legend of Zelda: Breath of The Wild)无法自拔,他尤其喜欢游戏中的 ...

  5. 牛客网NOIP赛前集训营-提高组(第四场)B区间

    牛客网NOIP赛前集训营-提高组(第四场)B区间 题目描述 给出一个序列$ a_1  \dots   a_n$. 定义一个区间 \([l,r]\) 是好的,当且仅当这个区间中存在一个 \(i\),使得 ...

  6. CF1097D Makoto and a Blackboard(期望)

    link 题目大意:给您一个数 n, 每次从n的所有约数(包含1.n)中等概率选出一个约数替换n,重复操作k次,求最后结果期望值%1e9+7. 题解:考虑暴力,我们设f(n,k)代表答案,则有f(n, ...

  7. python之类与对象(4)

    5. 类的继承 继承可谓是重中之重,也是面向对象编程的核心内容之一.子类可以继承父类的属性以及方法.作为一名测试人员,学习了类之后,我们可以很好的把代码与数据分离开来,有了基本的封装思想.接下来我们将 ...

  8. 小米MIX 3获得ROOT权限的步骤

    小米MIX 3有没有办法开启Root超级权限?大伙都知道,Android设备有Root超级权限,一旦手机开启root相关权限,可以实现更强大的功能,比如大伙部门的营销部门的妹纸,使用一些营销工具都需要 ...

  9. Comparison of Symbolic Deep Learning Frameworks

    http://blog.revolutionanalytics.com/2016/08/deep-learning-part-1.html Deep Learning Part 1: Comparis ...

  10. MySQL修改数据表

    ALTER [IGNORE] table tb_name alter_spec,alter_spec......... alter_specification: ADD [COLUMN] create ...