• 第二章 微服务构建:Spring Boot


    快速入门

    项目构建与解析

    系统及工具版本要求

    • Java 7及以上版本
    • Spring Framework 4.2.7及以上版本
    • Maven 3.2及以上版本/Gradle1.12及以上版本

    构建Maven项目

    1. 通过官方 Spring Initializr工具来产生基础项目
    2. 访问 http://start.sring.io/,该网站提供了以Maven或Gradle构建Spring Boot项目的功能
    3. 选择构建工具Maven、Spring Boot 版本选择1.3.7,因为要实现RESTful API,所以可以添加Web依赖
    4. 单机Generate Project按钮下载项目压缩包
    5. 解压项目包,并用IDE以maven项目导入,编译工具选择IDEA

    实现RESTful API

    在Spring Boot中创建一个RESTful API实现代码和Spring MVC应用一样,只是不需要想Spring MVC那样先做很多配置,直接开始编写Controller内容

    @RestController
    public class HelloController {
         @RequestMapping("/hello")
         public String index(){
               return "Hello World";   
    }   
    
    }

    可以直接启动,访问页面http://localhost:8080/hello,我们可以看到返回了预期结果: Hello World

     

    配置详解

    配置文件

    Spring Boot的默认配置文件位置为src/main/resource/application.properties中,除了传统的properties文件之外,还支持现在被广泛推荐使用的YAML文件

    YAML采用类似大纲的缩进形式来表示

    environments:
        dev:
            url:http://dev.bar.com
            name:Developer Setup
        prod:
            url:http://foo.bar.com
            name:Developer Setup

    此外配置文件中还支持自定义参数,随机数,命令行参数,多环境配置,加载顺序等功能

    监控与管理

    在应用中增加spring-boot-starter-actuator模块功能能实现监控与管理,在pom中新增spring-boot-starter-actuator的依赖,重新启动在控制台上会显示一批端点定义

    原生端点

    原生端点分为以下三大类

    1. 应用配置类:获取应用程序中加载的应用配置、环境变量、自动化配置报告等于Spring Boot应用密切相关的配置类信息
      • /autoconfig:获取应用的自动化配置报告
      • /beans:获取应用上下文创建的所有Bean
      • /configprops:获取应用中配置的属性信息报告
      • /env:获取应用所有可用的环境属性报告
      • /mappings:返回所有Spring MVC的控制器映射关系报告
      • /info:返回一些应用自定义的信息
    2. 度量指标类:获取应用程序运行过程中用于监控的度量指标,比如内存信息、线程池信息、HTTP请求统计等
      • /metrics:返回当前应用的各类重要度量指标,比如内存信息、线程信息、垃圾回收信息等
      • /health:获取应用的各类健康指标信息
      • /dump:暴露程序运行中的线程信息
      • /trace:返回基本的HTTP跟踪信息
    3. 操作控制类:提供了对应用的关闭等操作类功能
      • /shutdown:关闭应用
  • 相关阅读:
    javascript的字段值,私有变量,静态方法声明
    取得序列中某个点的范围边界
    使用wubi安装ubuntu11.04后无线网卡被禁用无法打开解决办法
    WEB前端性能优化
    jQuery的arrayLike
    在手机上安装BT5系统,没错就是破解无线密码的那个
    PHP在子类方法B调用父类的方法A时,不传参数时仍能得到方法B的名称
    讨厌的文本选区
    PHP遍历解析XML为一个数组
    “软工厂代码生成工具”的学习笔记
  • 原文地址:https://www.cnblogs.com/hzzjj/p/10035655.html
Copyright © 2020-2023  润新知