Spring Boot简介:

  Spring Boot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目。它使用习惯优于配置的理念让你的项目快速运行起来,使用Spring Boot很容易创建一个独立运行(运行jar,内置Servlet容器,Tomcat、jetty)、准生产级别的基于Spring框架的项目,使用SpringBoot你可以不用或者只需要很少的配置文件。

Spring Boot核心功能

  • 独立运行的Spring项目:可以以jar包形式独立运行,通过java -jar xx.jar即可运行
  • 内嵌Servlet容器:可以选择内嵌Tomcat、Jetty等
  • 提供starter简化maven配置:一个maven项目,使用了spring-boot-starter-web时,会自动加载Spring Boot的依赖包
  • 自动配置Spring:Spring Boot会根据在类路径中的jar包、类,为jar包中的类自动配置Bean
  • 准生产的应用监控:提供基于http、ssh、telnet对运行时的项目进行监控
  • 无代码生成和xml配置:主要通过条件注解来实现

Spring Boot项目搭建

  这里使用maven进行项目搭建,有几种搭建方式

  1、http://start.spring.io/,填写相关的项目信息、jdk版本等,就会生成一个maven项目的压缩包,下载解压导入IDE就可以

  2、IDE下直接创建,推荐使用STS(Spring Tool Suite)、IntelliJ IDEA均支持直接搭建,STS是Spring基于eclipse进行二次开发的工具

    Spring Tool Suite :新建Spring Initializr项目,填写项目信息和选择技术,将项目设置成maven项目

    IntelliJ IDEA:新建Spring Starter project,填写项目信息和选择技术完成maven工程创建

  3、Spring Boot CLI工具,使用命令创建

  4、手工构建maven项目

    •   任意IDE新建空maven项目
    •   修改pom.xml添加Spring Boot的父级依赖Spring-boot-starter-parent,添加之后这个项目就是一个Spring Boot项目了
  1. <parent>
  2.  
  3. <groupId>org.springframework.boot</groupId>
  4.  
  5. <artifactId>spring-boot-starter-parent</artifactId>
  6.  
  7. <version>1.5.4.RELEASE</version>
  8.  
  9. <relativePath/> <!-- lookup parent from repository -->
  10.  
  11. </parent>

Spring-boot-starter-parent是一个特殊的starter,用来提供相关的maven默认依赖,使用之后,常用的包依赖可以省略version标签

  • 修改pom.xml添加web支持的starter

    

  1. <dependency>
  2.  
  3. <groupId>org.springframework.boot</groupId>
  4.  
  5. <artifactId>spring-boot-starter-web</artifactId>
  6.  
  7. </dependency>
  • 添加Spring boot编译插件
  1. <build>
  2.  
  3. <plugins>
  4.  
  5. <plugin>
  6.  
  7. <groupId>org.springframework.boot</groupId>
  8.  
  9. <artifactId>spring-boot-maven-plugin</artifactId>
  10.  
  11. </plugin>
  12.  
  13. </plugins>
  14.  
  15. </build>

  项目生成之后,会在根包目录下生成一个入口类,添加一个测试控制器简单测试一下

    

  1. package com.wisely.ch5_2_4;
  2.  
  3. import org.springframework.boot.SpringApplication;
  4. import org.springframework.boot.autoconfigure.SpringBootApplication;
  5. import org.springframework.web.bind.annotation.RequestMapping;
  6. import org.springframework.web.bind.annotation.RestController;
  7.  
  8. @RestController
  9. @SpringBootApplication //Spring Boot核心注解,用于开启自动配置
  10. public class DemoApplication {
  11.  
  12. @RequestMapping("/")
  13. String index(){
  14. return "Hello Spring Boot";
  15. }
  16.  
  17. public static void main(String[] args) {
  18. SpringApplication.run(DemoApplication.class, args);
  19. }
  20. }

执行main方法之后,在浏览器中访问http://localhost:8080,可以得到如下结果:

  

注:本文主要参考《JavaEE开发的颠覆者 Spring Boot实战 》一书

  

快速搭建SpringBoot项目的更多相关文章

  1. 在线官网Spring Initializr 或 IntelliJ IDEA 快速搭建springboot项目

    Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置’,实现零配置. 那么,如何快速新建一个一个spring ...

  2. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-2.快速搭建SpringBoot项目,采用IDEA

    笔记 2.快速搭建SpringBoot项目,采用IDEA     简介:使用SpringBoot start在线生成项目基本框架并导入到IDEA中 参考资料:         IDEA使用文档    ...

  3. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-1.快速搭建SpringBoot项目,采用Eclipse

    笔记 1.快速搭建SpringBoot项目,采用Eclipse     简介:使用SpringBoot start在线生成项目基本框架并导入到eclipse中 1.站点地址:http://start. ...

  4. 使用IDEA快速搭建Springboot项目

    Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置’,实现零配置. 下面就介绍一下如何使用idea快速搭建 ...

  5. idea快速搭建springboot项目

    Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置',实现零配置. 那么,如何在idea中创建一个spri ...

  6. Spring Boot 学习(一) 快速搭建SpringBoot 项目

    快速搭建一个 Spring Boot 项目 部分参考于<深入实践Spring Boot>.<Spring实战 第四版>与程序猿DD的有关博客. 参考(嘟嘟独立博客):http: ...

  7. SpringBoot学习:在Interillj Idea上快速搭建SpringBoot项目

    一.创建SpringBoot项目 二.导入Jar包(pom.xml) <?xml version="1.0" encoding="UTF-8"?> ...

  8. SpringBoot学习:IDEA中快速搭建springboot项目

    项目下载地址:http://download.csdn.net/detail/aqsunkai/9805821 (一)IDEA中创建maven web项目 创建好项目后设置项目的编译路径: (二)引入 ...

  9. springboot学习一:快速搭建springboot项目

    1.idea创建springboot工程 JDK选择1.8以上的版本 选择springboot的版本和添加配置项 新建一个HelloController,测试 访问 http://localhost: ...

随机推荐

  1. 程序运行之ELF文件结构

    ELF目标文件格式的最前部是ELF文件头.包含了整个文件的基本属性.比如ELF文件版本,目标机器型号,程序入口地址等.然后是ELF的各个段,其中ELF文件中与段有关的重要结构就是段表.段表描述了ELF ...

  2. 私有云的迁移:从VMware到OpenStack

    VMware和OpenStack经常被描述为相互竞争的两种私有云技术.虽然这两种技术其实可以互补,但一些组织却选择从VMware迁移到OpenStack的私有云上. 让我们来看看这些组织如何能同时使用 ...

  3. 小程序 requestAnimationFrame 死循环

    小程序没有requestAnimationFrame  这个方法,小游戏有,使用这个方法会造成死循环

  4. PAT 天梯赛 L2-009. 抢红包 【排序】

    题目链接 https://www.patest.cn/contests/gplt/L2-009 思路 用结构体存储,然后结构体排序 注意一下 个人编号是从 1 开始 计数的 AC代码 #include ...

  5. c的详细学习(3)数据的输入输出

    c语言没有专门的数据输入输出语句,而是通过调用系统提供的的标准输入/输出库函数来实现数据的输入和输出.     (1)数据的输出: 注意:在使用标准的输入输出库函数时,使用编译预处理命令“#inclu ...

  6. Data Structure Linked List: Function to check if a singly linked list is palindrome

    http://www.geeksforgeeks.org/function-to-check-if-a-singly-linked-list-is-palindrome/ 这里的reverse可以re ...

  7. 【leetcode刷题笔记】Anagrams

    Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will be ...

  8. wget 监控web服务器

    wget --timeout=$timeout --tries=$times $url -q &>/dev/null --timeout=number 设定超时时间 --tries=nu ...

  9. EntityFramework 学习 一 Migration from Entity Framework 4.1/4.3 to Entity Framework 5.0/6.0

    To migrate your existing Entity Framework 4.x project to Entity Framework 5.0 using VS2012, first ta ...

  10. Thrift文件加载

    一.简述 通过前面的分析,我们知道无论是创建一个客户端还是服务器,第一步要做的就是调用thriftpy.load对thrift文件进行解析,并在内存中构建相应的module,本文将对load方法进行一 ...