暂时未有相关云产品技术能力~
现任技术部负责人,架构师。 博客地址:https://blog.minbox.org
在我们平时的项目研发过程中,异常一般都是程序员最为头疼的问题,异常的抛出、捕获、处理等既涉及事务回滚,还会涉及返回前端消息提醒信息。那么我们怎么设计可以解决上面的两个的痛点呢?我们可不可以统一处理业务逻辑然后给出前端对应的异常提醒内容呢?
在我们学习``SpringBoot``时都已经了解到``starter``是``SpringBoot``的核心组成部分,``SpringBoot``为我们提供了尽可能完善的封装,提供了一系列的自动化配置的``starter``插件,我们在使用``spring-boot-starter-web``时只需要在``pom.xml``配置文件内添加依赖就可以了,我们之前传统方式则是需要添加很多相关``SpringMVC``配置文件。而``spring-boot-starter-web``为我们提供了几乎所有的默认配置,很好的降低了使用框架时的复杂度。
`SpringBoot2.2`版本发行后一些新的功能也渐渐的浮出了水面,在之前版本`SpringBoot`的配置文件与类之间的属性绑定(`@ConfigurationProperties`)是通过`Setter`方法来进行绑定对应的配置值,而从`2.2`版本开始支持了`构造函数`的方式进行绑定。
之前章节介绍了`Actuator`对服务系统监控相关的知识点,了解到了开放指定`监控节点`、`查看详细健康信息`,我们本章来介绍下`Actuator`的黑科技,远程关闭应用服务。
在中大型企业项目开发中,环境分离是必不可少的一步,然而现在的开发人员也只是有这个概念,还是有很多项目采用普通的方式,每次打包发布部署的时候改动一大堆的配置文件,有一个地方忘记改就相当于白更新了一次系统,这种修改配置文件完成环境更换的方式给我们带来了很多的困扰,浪费了我们很多宝贵的时间!早在``Spring 3.1``版本就已经为我们提供了环境分离的相关注解配置方式,不过在传统的Spring项目中配置``Profile``确实有点麻烦,在``Spring``版本的不断更新直到后来``SpringBoot``成长起来后``Profile``已经能够很好支持项目配置环境分离。
本章基于`Spring Security 5.4.1`版本编写,从`5.x`版本开始引入了很多新的特性。 为了适配老系统的安全框架升级,`Spring Security`也是费劲了心思,支持不同的密码加密方式,而且根据不同的用户可以使用不同的加密方式。
``ApplicationContext``对象是``Spring``开源框架的上下文对象实例,在项目运行时自动装载``Handler``内的所有信息到内存。传统的获取方式有很多种,不过随着``Spring``版本的不断迭代,官方也慢慢的不建议使用部分方式。下面我简单介绍一种``Spring``官方推荐使用的方式!
``ApplicationEvent``以及``Listener``是Spring为我们提供的一个事件监听、订阅的实现,内部实现原理是观察者设计模式,设计初衷也是为了系统业务逻辑之间的解耦,提高可扩展性以及可维护性。事件发布者并不需要考虑谁去监听,监听具体的实现内容是什么,发布者的工作只是为了发布事件而已。
`SpringBoot`从2.4.x版本开始支持了导入文件的方式来加载配置参数,与`spring.config.additional-location`不同的是不用提前设置而且支持导入的文件类型相对来说要丰富很多。
我们在使用`git`托管项目代码时,如果是新建项目需要通过`git init`命令在项目根目录下初始化`.git`目录来实现后续的代码托管管理,如果直接从代码仓库拉取代码则会自动创建`.git`目录与远程仓库进行绑定。
身份验证允许进入系统,而授权允许访问同一系统内的特定功能。安全断言标记语言 (SAML) 是一种开放标准,它试图弥合身份验证和授权之间的鸿沟。
[Drone](https://drone.io) 是一个现代化的持续集成平台,能够使用强大的云原生管道引擎自动化他们的构建、测试和发布工作流程,让我们不再关注程序如何发布而是如何去实现,去更好的实现。
最近对于公司项目源码分支管理有一些规范构思,对于同一个项目而言,`不同环境`的源码管理、`自动化部署`方式、以及`接口数据隔离`等我们是否可以满足现状?
SpringCloud Alibaba是阿里巴巴致力于对微服务的管理、配置、注册等一整套的解决方案。 简介 Nacos 提供用于存储配置和其他元数据的 K-V 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。
通过本系列的前篇文章: 《SpringCloud Alibaba - Nacos 作为配置中心 & 读取Properties配置信息》 在之前文章中我们学习到了SpringCloud Alibaba读取Nacos Config内定义的properties类型的配置文件信息,并且使用Nacos Console进行修改配置信息后可以在应用程序内实时更新。
SpringCloud版本整合Eureka时可以很好的通过结合Ribbon + RestTemplate实例来共同完成服务调用的负载均衡,当然Nacos Discovery同样可以无缝的对接Ribbon来完成LoadBalance请求健康的服务地址。
ApiBoot是一款基于SpringBoot1.x,2.x的接口服务集成基础框架, 内部提供了框架的封装集成、使用扩展、自动化完成配置,让接口开发者可以选着性完成开箱即用, 不再为搭建接口框架而犯愁,从而极大的提高开发效率。
`ApiBoot`通过整合`Swagger2`完成自动化接口文档生成,只需要一个简单的注解我们就可以实现文档的开启,而且文档上面的所有元素都可以自定义配置,通过下面的介绍来详细了解`ApiBoot Swagger`的简易之处。
`FastJson`是阿里巴巴提供的一款`Json`格式化插件。 `ApiBoot`提供了`FastJson`驱动转换接口请求的`Json`字符串数据,添加该依赖后会自动格式化时间(格式:YYYY-MM-DD HH:mm:ss)、空对象转换为空字符串返回、空Number转换为0等,还会自动装载`ValueFilter`接口的实现类来完成自定义的数据格式转换。
`ApiBoot`添加快速集成`Aliyun`的对象存储服务`Oss`,提供常用的文件操作方法,当然也提供自定义扩展,以致于满足绝大数业务场景,并且通过扩展可以实现上传文件进度条、下载文件进度条、存储空间操作、静态网站托管、访问日志、防盗链、分片上传、追加上传、断点续传等等。
`ApiBoot`的短信服务模块是由`阿里云`的国际短信服务提供的,支持国内和国际快速发送验证码、短信通知和推广短信。
`ApiBoot`内部集成了`Quartz`,提供了`数据库方式`、`内存方式`的进行任务的存储,其中`数据库`方式提供了`分布式集群任务调度`,任务自动平滑切换执行节点。
ApiBoot是一款基于SpringBoot1.x,2.x的接口服务集成基础框架, 内部提供了框架的封装集成、使用扩展、自动化完成配置,让接口开发者可以选着性完成开箱即用, 不再为搭建接口框架而犯愁,从而极大的提高开发效率。
用一个HelloWord来阐述SpringBoot的简单与快速