zoukankan      html  css  js  c++  java
  • 带你理解springboot中的endpoint

    背景:我们如果要查询一个商品列表的信息,需要调用后台商品列表一个接口,类似:

    但,如果我们要了解一个系统的状况信息呢,如健康状态,内存使用率,cpu占用率;此时我们还是一样需要调用一个接口,但这个接口是给运维人员使用的或者内部使用的,

    并非给用户端调用的;为了区分这种场景,springboot新增了EndPoint的方式来实现:如下:

    你可以简单把endPoint方式实现接口的当作特殊的RequestMapping方式,其实你看底层源码,

    会发现他们在DispatcherServlet中的逻辑是一样的既然是给内部或者运维使用的,

    这些接口默认是不开放的,也就是外部不能访问,我们要使用,需要先在yml中配置,在这之前需要先引入依赖:

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>

    那么我们回到上面那个HealthEndPoint看看该接口的访问路径:http:ip:端口/actuator/health   看起来是不是跟RequestMapping的访问方式一致呢;

    那我们如何自己定义Endpoint呢?

      访问一下:

     总结:可以把endPoint看成特殊的RequestMapping,很多框架使用该特性,如健康检查

    
    




  • 相关阅读:
    jstl 部分标签
    Maven pom.xml 元素配置说明(一)
    spring 参数绑定
    mysql 索引
    ArrayList和HashSet的Contains()方法(转)
    每日记载内容总结44
    剑指offer42:不用加减乘除做加法
    动态规划常见题型
    华为机试-统计每个月兔子的总数
    华为机试-字符串合并处理
  • 原文地址:https://www.cnblogs.com/yangxiaohui227/p/15255879.html
Copyright © 2011-2022 走看看