1. RestTemplate中的URLEncode

    0. 起因 正常情况下 url 只会出现英文字母、数字和标点符号,特殊字符会在请求前进行 encode 操作,转化成合法的 url。 例如我们用浏览器在百度上搜索 += 时,浏览器实际上访问的是 https://www.baidu.com/s?wd=%2B%3D。 encode 操作其实是将需要转码的字符转为 16 进制,然后从右到左,取 4 位(不足 4 位直接处理),每 2 位做一位,前面加上 % ,编码成 %XY 格式。 常见特殊字符及编码后值如下:

    2018/12/22 踩坑

  2. 日志中的requestId

    1 定义 在日志采集和分析的过程中,有时希望能根据每一次请求把日志串联起来,让日志更能暴露出这一次请求所存在的问题。我们引入requestId作为单次请求的唯一标识,并在这条请求的所有日志中打印出该requestId。

    2018/06/20 java

  3. 单元测试

    1. Mockito

    2018/06/13 basis

  4. authorize(基于注解的权限认证框架)

    一、是什么 很多项目都会用到权限管理,目前流行的权限框架(Apache Shiro,Spring Security等)在使用的时候都觉得很繁琐,特别是在一些小型的项目中。有时候我会想,如果通过注解的方式,直接把权限注解到访问的接口方法上那该有多好。 authorize就是一个为了解决这个问题,通过注解配置权限,借助拦截器进行权限检查的一个开源权限框架。使用起来就像下面这种感觉。

    2018/06/13 open source

  5. Spring Cloud Config 使用本地配置文件

    一、简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring cloud config 组件中,分两个角色,一是config server,二是config client。

    2018/06/13 java spring

  6. Spring Cloud 保证微服务内安全

    一、简介 在微服务的架构下,我们需要把系统的业务划分成多个单一的微服务。每个微服务都会提供接口供其他微服务调用,在Dubbo中可以通过rmi、nio等实现,Spring Cloud中是通过http调用的。但有些时候,我们只希望用户通过我们的网关调用微服务,不允许用户直接请求微服务。这时我们就可以借助Spring Security来保障安全。

    2018/06/13 java spring

  7. Spring StateMachine介绍

    一、状态机 有限状态机是一种用来进行对象行为建模的工具,其作用主要是描述对象在它的生命周期内所经历的状态序列,以及如何响应来自外界的各种事件。在电商场景(订单、物流、售后)、社交(IM消息投递)、分布式集群管理(分布式计算平台任务编排)等场景都有大规模的使用。

    2018/06/13 java spring

  8. 最短路径-弗洛伊德

    1.定义概述 Floyd-Warshall算法(Floyd-Warshall algorithm)是解决任意两点间的最短路径的一种算法,可以正确处理有向图或负权的最短路径问题,同时也被用于计算有向图的传递闭包。 2.实例演示

    2018/06/13 algorithm