一、Spring Boot 简介

官网英文:

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can “just run”.
We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss.
Most Spring Boot applications need very little Spring configuration.

官网中文说法:

Spring引导使您可以轻松地创建独立的、生产级的基于Spring的应用程序,您可以“直接运行”。
我们对Spring平台和第三方库采取了一种固执己见的观点,这样您就可以开始使用最小的忙乱。大多数Spring启动应用程序都需要非常少的Spring配置。
  
简化Spring应用开发的一个框架;
整个Spring技术栈的一个大整合;
J2EE开发的一站式解决方案;
 
二、微服务
 
2014,martin fowler
微服务 : 架构风格(服务微化)
一个应用应该是一组小型服务;可以通过HTTP的方式进行互通;
单体应用 : ALL IN ONE
微服务 : 每一个功能元素最终都是一个可独立替换和独立升级的软件单元;

二、环境准备

  • jdk1.8:Spring Boot 推荐jdk1.7及以上;
  • maven3.x:maven 3.3以上版本;
  • IntelliJIDEA2017:IntelliJ IDEA 2017.2.2 x64、STS

  • SpringBoot 1.5.9.RELEASE:1.5.9
  • 统一环境;

三、MAVEN设置
1. 给maven 的settings.xml配置文件的profiles标签添加

<profile>
<id>jdk‐1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
2. IDEA设置 整合maven进来;

四、Spring Boot HelloWorld程序

  浏览器发送hello请求,服务器接受请求并处理,响应Hello World字符串;

  1、创建一个maven工程;(jar)

  2、导入spring boot相关的依赖

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐web</artifactId>
</dependency>
</dependencies>

  3、编写一个主程序;启动Spring Boot应用

/**
* @author 超轶绝尘
*/
@SpringBootApplication
public class SpringBootDemoApplication { public static void main(String[] args) {
SpringApplication.run(HelloWorldMainApplication.class, args);
}
}

4、编写相关的Controller、Service

@Controller
public class HelloController {
  @ResponseBody
  @RequestMapping("/hello")
  public String hello(){
    return "Hello World!";
  }
}

5、运行主程序测试

6、简化部署

<!‐‐ 这个插件,可以将应用打包成一个可执行的jar包;‐‐>
<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring‐boot‐maven‐plugin</artifactId>
    </plugin>
  </plugins>
</build>

将这个应用打成jar包,直接使用java -jar的命令进行执行;

五、自动部署与刷新


自动部署

为了让开发更加得心应手,我们进一步优化IDE,使得Web应用可以自动重启,页面内容修改时网页可以自动刷新,这可以极大地提高我们的开发体验和开发效率。

为了让Spring Boot在需要重启时,能够自动进行,我们只需要

1、在POM文件中增加以下依赖。

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>

2.1、设置Intellij IDEA

  Settings->Build,Execution,Deployment->Compiler->Build project automatically

注意:这里有两个选择,Default Settings是全部项目默认的,假如你之前已经添加了项目,那么设置完这个后当前项目是不会生效的,那么此时需要设置当前项目的Settings,也是同样的设置路径。

2.2

Linux/Windows:【Ctrl】+【Alt】+【Shift】+【/】

Mac:【Command】+【Alt】+【Shift】+【/】

1.springboot:入门程序的更多相关文章

  1. Springboot入门程序

    springboot简化之前的很多xml文件,不需要大量配置xml文件,没有很多xml文件是多么的愉快 下面进入正题,演示简单的入门程序,虽然简单,但足以振奋初学者们 我新建的工程名叫hello,大家 ...

  2. 一个简单的SpringBoot入门程序

    1. 使用IDEA构建Maven项目 <?xml version="1.0" encoding="UTF-8"?> <project xmln ...

  3. SpringBoot的入门程序

    1. 创建一个springboot工程 可以参考springboot入门程序 2. 创建一个实体类 @Data //想相当于@Setter.@Getter和@ToString替代了setter.get ...

  4. springboot项目搭建:结构和入门程序

    Spring Boot 推荐目录结构 代码层的结构 根目录:com.springboot 1.工程启动类(ApplicationServer.java)置于com.springboot.build包下 ...

  5. SpringBoot入门基础

    目录 SpringBoot入门 (一) HelloWorld. 2 一 什么是springboot 1 二 入门实例... 1 SpringBoot入门 (二) 属性文件读取... 16 一 自定义属 ...

  6. SpringBoot入门示例

    SpringBoot入门Demo SpringBoot可以说是Spring的简化版.配置简单.使用方便.主要有以下几种特点: 创建独立的Spring应用程序 嵌入的Tomcat,无需部署WAR文件 简 ...

  7. Spring全家桶系列–[SpringBoot入门到跑路]

    //本文作者:cuifuan Spring全家桶————[SpringBoot入门到跑路] 对于之前的Spring框架的使用,各种配置文件XML.properties一旦出错之后错误难寻,这也是为什么 ...

  8. SpringBoot入门(三)——入口类解析

    本文来自网易云社区 上一篇介绍了起步依赖,这篇我们先来看下SpringBoot项目是如何启动的. 入口类 再次观察工程的Maven配置文件,可以看到工程的默认打包方式是jar格式的. <pack ...

  9. SpringBoot入门(五)——自定义配置

    本文来自网易云社区 大部分比萨店也提供某种形式的自动配置.你可以点荤比萨.素比萨.香辣意大利比萨,或者是自动配置比萨中的极品--至尊比萨.在下单时,你并没有指定具体的辅料,你所点的比萨种类决定了所用的 ...

  10. SpringBoot入门(二)——起步依赖

    本文来自网易云社区 在前一篇我们通过简单几步操作就生成了一个可以直接运行的Web程序,这是因为SpringBoot代替我们做了许多工作,概括来讲可以分为起步依赖和自动配置.这一篇先来看看起步依赖. 项 ...

随机推荐

  1. [日常工作]GS使用安装盘修改密码后的处理

    1. GS服务器端有时候需要修改 9999 的用户密码.但是修改完密码之后有几个注意事项: 一般有两个可以修改注册的地方: 使用setup里面的修改用户密码 修改完密码之后要手工注册一下数据库实例 也 ...

  2. c#通过反射移除所有事件

    移除全部事件委托 C# code   ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3 ...

  3. TMainMenu - 隐藏与显示菜单

    //隐藏与显示菜单 Self.Menu := nil; {隐藏菜单} Self.Menu := MainMenu1; {显示菜单}

  4. Linux系统——程序员跳槽必备

    相信在看这篇文章的你,曾经或者现在是否跳槽呢,在北上广一线城市,你是否还在挣着那可怜巴巴的工资,过着拮据生活呢?但是自己想跳槽,却没有一技之长或者是自己的技术找工作太难了,那么我建议你学习下linux ...

  5. java 使用 WebUploader

    参考: http://blog.csdn.net/finalAmativeness/article/details/54668090 最近项目需要多文件上传. 所以使用了 baidu的 webuplo ...

  6. MT【241】红蓝两色染色

    用红蓝两色给$3*3$的格子染色,要求每行每列每种颜色都有,则不同的染色方法_____ 分析:按红色格子数分类,1)红色3或者6个有6种.2)红色4或者5个有45种.故一共有2*(6+45)=102种 ...

  7. 【BZOJ1800】[AHOI2009]飞行棋(暴力)

    [BZOJ1800][AHOI2009]飞行棋(暴力) 题面 BZOJ 洛谷 题解 预处理一下前缀和就可以\(O(1)\)计算两点间的距离了,直接\(O(n^4)\)暴力枚举即可. #include& ...

  8. 转载:Unity3D游戏对象消失enabled、Destroy与active的区别

    转自:http://www.manew.com/3276.html Unity3D游戏对象消失三种方法的区别: gameObject.active:是否在场景中停用该物体,在你gameObject.a ...

  9. 洛谷P3622 动物园

    题意:给定一个n个元素的圈,m个条件.满足一个条件需要选某些元素或不选另一些元素. 问最多能满足多少条件.每个条件所关联的元素,最远的两个距离不会超过5. 解:想了半天...... 首先能想到断环成链 ...

  10. 【LOJ#6280】数列分块4

    题目大意:维护一个长度为 N 的序列,支持两种操作:区间修改.区间求和.N <= 50000 题解:在维护分块的同时,维护每个区间的和,保证在 \(O(1)\) 的时间查询答案. 代码如下 #i ...