一、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. [日常工作] Inspur 服务器安装ESXi的简单过程

    1. 公司里面使用虚拟化来进行功能测试 性能测试, 现阶段和之前主要是用虚拟机来搞. 前期用过hyperV 但是感觉 没有SystemCenter的VMM的授权比较难搞一些. 所以还是用ESXi的多了 ...

  2. Jquery ajax ajaxStart()和ajaxStop()加载前的优雅表现

    Jquery中当一个Ajax请求启动时,并且没有其他未完成的Ajax请求时,将调用ajaxStart()方法.同样,ajaxStop()方法则是在所有Ajax请求都完成时调用.这些方法的参数都是一个函 ...

  3. Jquery ajax 数据更新

    $(function(){ var $personWifePs=$("#wife-money tbody tr"); var $personWife=$("#wife-m ...

  4. Linux基础学习(2)--Linux系统安装

    第二章——Linux系统安装 一.VMware虚拟机安装与使用 1.VMware简介:            VMware是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟 ...

  5. linux shell $ 特殊变量

    $0   #Shell本身的文件名 $1-$n   #添加到Shell的各参数值.$1是第1参数.$2是第2参数… $*   #所有参数列表.如"$*"用「"」括起来的情 ...

  6. python之FTP上传和下载

    # FTP操作 import ftplib host = '192.168.20.191' username = 'ftpuser' password = 'ftp123' file = '1.txt ...

  7. BZOJ1124 POI2008枪战Maf(环套树+贪心)

    每个点出度都为1,可以发现这张图其实是个环套树森林,树中儿子指向父亲,环上边同向. 首先自环肯定是没救的,先抬出去. 要使死亡人数最多的话,显然若一个点入度为0其不会死亡,而一个孤立的环至少会留下一个 ...

  8. day29 __eq__ 比较

    本质上 "==" 调用的内部方法就是 __eq__() 正常情况下,两个名字相同的变量比较的是内存地址,内存地址当然是不一样的可以使用__eq__来改变成名字相同就相等 1 cla ...

  9. 【题解】 bzoj1076: [SCOI2008]奖励关 (装压+期望dp)

    题面戳我 Solution 并不会做,看了下题解大概了解了.期望这个东西好难搞啊qwq 我们定义\(dp[i][j]\)表示第\(i\)步,拿到宝物前的状态为\(j\). 正着来会有很多不合法的情况, ...

  10. 洛谷 P2725 邮票 Stamps 解题报告

    P2725 邮票 Stamps 题目背景 给一组 N 枚邮票的面值集合(如,{1 分,3 分})和一个上限 K -- 表示信封上能够贴 K 张邮票.计算从 1 到 M 的最大连续可贴出的邮资. 题目描 ...