springboot 返回值拦截 springboot返回指定字段_自定义


前言

本节提供一个Spring Boot参考文档的简明概述。你可以把它作为文档其余部分的导航。你可以从头到尾依次阅读该参考指

使用Spring Boot

准备开始实际使用Spring Boot?我们已经为你铺好道路.

构建系统:Maven|Gradle|Ant|Starter POMs

最佳实践:代码结构|@Configuration|@EnableAutoConfiguration|Beans和依赖注入

运行代码:IDE|Packaged|Maven|Gradle

应用打包:生产jars

Spring Boot命令行:使用CLI

第一步

如果你想从总体上对Spring Boot或Spring入门,可以从这里开始!

从零开始:概述|要求|安装

教程:第一部分|第二部分

运行示例:第一部分|第二部分

了解Spring Boot特性

需要更多Spring Boot核心特性?这是为你准备的!

核心特性:SpringApplication|外部配置|Profiles|日志

Web应用:MVC|内嵌容器

使用数据:SQL|NO-SQL

消息:概述|JMS

测试:概述|Boot应用|工具

扩展:Auto-configuration|@Conditions

迁移到生存环境

当你准备将你的Spring Boot应用推送到生产环境时,我们为你准备了一些你可能喜欢的技巧!

管理端点:概述|自定义

连接可选项:HTTP|JMX|SSH

监控:指标|审计|追踪|进程

高级主题

最后,我们为高级用户准备了一些主题。

云部署:Cloud Foundry|Heroku|CloudBees

构建工具插件:Maven|Gradle

附录:应用属性|Auto-configuration类|可执行Jars

开始

如果你想从总体上对Spring Boot或Spring入门,本章节就是为你准备的!在这里,我们将回答基本

的"what?","how?"和"why?"问题。你会发现一个温雅的Spring Boot介绍及安装指南。然后我们构建第一个Spring Boot应

用,并讨论一些我们需要遵循的核心原则。

项目介绍

一个非常好的springboot学习框架,注释全网最全,自动生成controller、model、dao、html、sql文件,集成一个shiro 权限框架,非常方便的脚手架,开发、接私活利器。

技术选项


springboot 返回值拦截 springboot返回指定字段_自定义_02


前端技术


springboot 返回值拦截 springboot返回指定字段_HTTP_03


开发环境

  • JDK8.0
  • mysql5.5.40 OR msql 8.0
  • eclipse

部署流程

  1. 导入doc文件夹里面的test.sql到数据库
  2. 确认自己的mysql版本 进行修改jar 在pom.xml 73-84行
  3. 修改application-dev.yml 里面自己数据库版本对应的jdbc链接
  4. 正常启动run SpringbootSwagger2Application.java

打包发布编译流程

  • maven编译安装pom.xml文件即可打包成war

登陆地址

  • http://localhost:8081 默认帐号密码: admin/admin
  • swagger http://localhost:8081/swagger-ui.html

启动类

  • SpringbootSwagger2Application 启动类

数据库模型


springboot 返回值拦截 springboot返回指定字段_springboot 返回值拦截_04


界面风格


springboot 返回值拦截 springboot返回指定字段_mysql_05


springboot 返回值拦截 springboot返回指定字段_springboot指定属性返回_06


springboot 返回值拦截 springboot返回指定字段_springboot 返回值拦截_07


代码自动生成功能


springboot 返回值拦截 springboot返回指定字段_mysql_08


springboot 返回值拦截 springboot返回指定字段_HTTP_09


后期功能

功能描述字典表

部署文档

文件上传完成再次优化完成add跟eidt页面js写出js文件

500页面完成404页面完成权限错误页面完成

注意事项

  • 所有的model字段解释都在mysql的字段注释里面,请具体查看mysql的字段注解

Github

Spring Boot执行器:Production-ready特性

Spring Boot包含很多其他的特性,它们可以帮你监控和管理发布到生产环境的应用。你可以选择使用HTTP端点,JMX或远

程shell(SSH或Telnet)来管理和监控应用。审计(Auditing),健康(health)和数据采集(metrics gathering)会自动应

用到你的应用。

开启production-ready特性

spring-boot-actuator模块提供了Spring Boot所有的production-ready特性。启用该特性的最简单方式就是添加对spring-boot

starter-actuator ‘Starter POM’的依赖。

执行器(Actuator)的定义:执行器是一个制造业术语,指的是用于移动或控制东西的一个机械装置。一个很小的改变就能

让执行器产生大量的运动。

基于Maven的项目想要添加执行器只需添加下面的'starter'依赖:


springboot 返回值拦截 springboot返回指定字段_springboot指定属性返回_10


对于Gradle,使用下面的声明:


springboot 返回值拦截 springboot返回指定字段_HTTP_11


端点

执行器端点允许你监控应用及与应用进行交互。Spring Boot包含很多内置的端点,你也可以添加自己的。例如,health端点

提供了应用的基本健康信息。

端点暴露的方式取决于你采用的技术类型。大部分应用选择HTTP监控,端点的ID映射到一个URL。例如,默认情况下,

health端点将被映射到/health。

下面的端点都是可用的:


springboot 返回值拦截 springboot返回指定字段_HTTP_12


注:根据一个端点暴露的方式,sensitive参数可能会被用做一个安全提示。例如,在使用HTTP访问sensitive端点时需要提供

用户名/密码(如果没有启用web安全,可能会简化为禁止访问该端点)。

. 自定义端点

使用Spring属性可以自定义端点。你可以设置端点是否开启(enabled),是否敏感(sensitive),甚至它的id。例如,下面

的application.properties改变了敏感性和beans端点的id,也启用了shutdown。


springboot 返回值拦截 springboot返回指定字段_HTTP_13


注:前缀 endpoints + . + name 被用来唯一的标识被配置的端点。

默认情况下,除了shutdown外的所有端点都是启用的。如果希望指定选择端点的启用,你可以使用endpoints.enabled属性。

例如,下面的配置禁用了除info外的所有端点:


springboot 返回值拦截 springboot返回指定字段_mysql_14


健康信息

健康信息可以用来检查应用的运行状态。它经常被监控软件用来提醒人们生产系统是否停止。health端点暴露的默认信息取

决于端点是如何被访问的。对于一个非安全,未认证的连接只返回一个简单的'status'信息。对于一个安全或认证过的连接其

他详细信息也会展示(具体参考Section 41.6, “HTTP Health endpoint access restrictions” )。

健康信息是从你的ApplicationContext中定义的所有HealthIndicator beans收集过来的。Spring Boot包含很多auto-configured

的HealthIndicators,你也可以写自己的。

安全与HealthIndicators

HealthIndicators返回的信息常常性质上有点敏感。例如,你可能不想将数据库服务器的详情发布到外面。因此,在使用一个

未认证的HTTP连接时,默认只会暴露健康状态(health status)。如果想将所有的健康信息暴露出去,你可以把

endpoints.health.sensitive设置为false。

为防止'拒绝服务'攻击,Health响应会被缓存。你可以使用 endpoints.health.time-to-live 属性改变默认的缓存时间(1000毫

秒)。

. 自动配置的HealthIndicators

下面的HealthIndicators会被Spring Boot自动配置(在合适的时候):


springboot 返回值拦截 springboot返回指定字段_mysql_15


编写自定义HealthIndicators

想提供自定义健康信息,你可以注册实现了HealthIndicator接口的Spring beans。你需要提供一个health()方法的实现,并返

回一个Health响应。Health响应需要包含一个status和可选的用于展示的详情。


springboot 返回值拦截 springboot返回指定字段_HTTP_16


除了Spring Boot预定义的Status类型,Health也可以返回一个代表新的系统状态的自定义Status。在这种情况下,需要提供

一个HealthAggregator接口的自定义实现,或使用management.health.status.order属性配置默认的实现。

例如,假设一个新的,代码为FATAL的Status被用于你的一个HealthIndicator实现中。为了配置严重程度,你需要将下面的配

置添加到application属性文件中:


springboot 返回值拦截 springboot返回指定字段_mysql_17


如果使用HTTP访问health端点,你可能想要注册自定义的status,并使用HealthMvcEndpoint进行映射。例如,你可以将

FATAL映射为HttpStatus.SERVICE_UNAVAILABLE。

自定义应用info信息

通过设置Spring属性info.*,你可以定义info端点暴露的数据。所有在info关键字下的Environment属性都将被自动暴露。例

如,你可以将下面的配置添加到application.properties:


springboot 返回值拦截 springboot返回指定字段_自定义_18