构建spring boot工程一般采用两种方式 gradle 、maven

maven方式

  pom.xml

    • spring-boot-starter:核心模块,包括自动配置支持、日志和YAML
    • spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito
    • spring-boot-starter-web:Web模块

gradle方式

  build.gradle

    compile("org.springframework.boot:spring-boot-starter-web:1.4.1.BUILD-SNAPSHOT")

springboot的启动类

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

SpringBootApplication注解源码

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@Configuration
@EnableAutoConfiguration
@ComponentScan
public @interface SpringBootApplication { /**
* Exclude specific auto-configuration classes such that they will never be applied.
* @return the classes to exclude
*/
Class<?>[] exclude() default {}; }
@Configuration : 表示Application作为sprig配置文件存在
@EnableAutoConfiguration: 启动spring boot内置的自动配置
@ComponentScan : 扫描bean,路径为Application类所在package以及package下的子路径

controller服务类

@RestController
@RequestMapping("/springboot")
public class HelloWorldController { @RequestMapping(value = "/{name}", method = RequestMethod.GET)
public String sayWorld(@PathVariable("name") String name) {
return "Hello " + name;
}
}

访问:http://localhost:8080/springboot/wonder

Spring Boot提供了很多”开箱即用“的依赖模块,都是以spring-boot-starter-xx作为命名的。下面列举一些常用的模块。

spring-boot-starter-logging :使用 Spring Boot 默认的日志框架 Logback。
spring-boot-starter-log4j :添加 Log4j 的支持。
spring-boot-starter-web :支持 Web 应用开发,包含 Tomcat 和 spring-mvc。
spring-boot-starter-tomcat :使用 Spring Boot 默认的 Tomcat 作为应用服务器。
spring-boot-starter-jetty :使用 Jetty 而不是默认的 Tomcat 作为应用服务器。
spring-boot-starter-test :包含常用的测试所需的依赖,如 JUnit、Hamcrest、Mockito 和 spring-test 等。
spring-boot-starter-aop :包含 spring-aop 和 AspectJ 来支持面向切面编程(AOP)。
spring-boot-starter-security :包含 spring-security。
spring-boot-starter-jdbc :支持使用 JDBC 访问数据库。
spring-boot-starter-redis :支持使用 Redis。
spring-boot-starter-data-mongodb :包含 spring-data-mongodb 来支持 MongoDB。
spring-boot-starter-data-jpa :包含 spring-data-jpa、spring-orm 和 Hibernate 来支持 JPA。
spring-boot-starter-amqp :通过 spring-rabbit 支持 AMQP。
spring-boot-starter-actuator : 添加适用于生产环境的功能,如性能指标和监测等功能。

一、springboot入门的更多相关文章

  1. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

  2. SpringBoot入门基础

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

  3. SpringBoot入门示例

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

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

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

  5. springboot入门之一:环境搭建(续)

    在上篇博客中从springboot的入门到运行一个springboot项目进行了简单讲述,详情请查看“springboot入门之一”.下面继续对springboot做讲述. 开发springboot测 ...

  6. 【Java】SpringBoot入门学习及基本使用

    SpringBoot入门及基本使用 SpringBoot的介绍我就不多说了,核心的就是"约定大于配置",接下来直接上干货吧! 本文的实例: github-LPCloud,欢迎sta ...

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

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

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

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

  9. SpringBoot入门(四)——自动配置

    本文来自网易云社区 SpringBoot之所以能够快速构建项目,得益于它的2个新特性,一个是起步依赖前面已经介绍过,另外一个则是自动配置.起步依赖用于降低项目依赖的复杂度,自动配置负责减少人工配置的工 ...

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

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

随机推荐

  1. Pythonの坑

    Python closures and late binding A closure occurs when a function has access to a local variable fro ...

  2. 【AGC003F】Fraction of Fractal

    Description ​ 原题链接 ​ Solution ​ 神题. ​ 定义一个上边界或下边界的格子为"上下接口",当且仅当上下边界该位置的格子都是黑色的. ​ "左 ...

  3. wazhu之agent manage

      代理生命周期 注册代理 一旦代理程序安装在要监控的计算机上,就必须向Wazuh管理器注册才能建立通信.这可以通过命令行,Authd或RESTful API完成. 注册代理将保留在管理器中,直到用户 ...

  4. 【费用流】【网络流24题】【P1251】 餐巾计划问题

    Description 一个餐厅在相继的 \(N\) 天里,每天需用的餐巾数不尽相同.假设第 \(i\) 天需要 \(r_i\)块餐巾.餐厅可以购买新的餐巾,每块餐巾的费用为 \(p\) 分;或者把旧 ...

  5. md5sum命令行使用注意事项

    Linux下md5sum命令可以直接计算标准输入的hash值,使用方式为 echo -n '123456' | md5sum 注意给echo加上-n表示在尾部不加换行 命令行示例 $ echo -n ...

  6. 加ico

    <link rel="icon" type="text/css" href="/favicon.png" />

  7. Python【pymysql】模块

    import pymysql# 1.连上数据库 账号.密码 ip 端口号 数据库#2.建立游标#3.执行sql#4 .获取结果# 5.关闭游标#6.连接关闭coon = pymysql.connect ...

  8. cuckoo 安装

    最新 https://www.jianshu.com/p/f623fa0bebf9 http://www.freebuf.com/articles/system/123816.html http:// ...

  9. day16 常用类(String、StringBuffer、StringBuilder)

    1.String是唯一一个可以直接用常量赋值的引用数据类型. String的常量也是一个对象. 数据段——字符串常量池. 2.每一个字符串常量对象在加载期放入字符串常量池. java对String常量 ...

  10. MetaBase

    MetaBase是一个快速创建图表的Web站点,对于频繁上新项目,频繁提供数据报表,但人力不足的情况下,是一个不错的选择. 一. 安装部署 在windows环境下可以使用jar.docker的方式,本 ...