MockMvc WebFilter不生效问题解决
在SpringBoot项目中,配置了一个@WebFilter,正常启动没问题,但是通过MockMvc进行单元测试死活不生效 @Configuration @Order(1) @WebFilter(urlPatterns = ["/**"]) class HttpServletRequestWrapperFilter : Filter { o…
thumbnail
UI.Vision Kantu-基于Selenium的浏览器自动化工具
之前简单介绍过Selenium框架在Java中的简单应用,用来做基于webDriver的自动化测试非常方便。但是通过硬编码的方式虽然简单,但是也还是要写不少的代码的,今天发现了一款基于Selenium的浏览器自动化插件,支持录制和回放,完全可以将网页中的一些重复的操作录制下来,解放双手。 下载地址 https://chrome.google.com…
thumbnail
MySQL7新特性之JSON数据类型
从MySQL 5.7.8开始,原生提供了一个JSON类型的数据格式,在此之前类似的需求都是需要通过VARCHAR的方式来存储处理的。 JSON数据类型,拥有自动校验格式功能;提供操作JSON数据的内置函数;优化的存储格式,存储在JSON列中的JSON数据被转换成内部的存储格式,允许快速读取;支持修改JSON对象的特定属性,而不需要更新整个JSON内…
thumbnail
Canal数据同步中间件初探
MySQL本身是支持主从模式(Master/Slave)的,Master产生的日志(binary log)中记录了所有增删改语句,将日志发送到Slave执行即可完成数据库的增量数据同步操作。 Canal是阿里巴巴开源的一个中间件,他的作用就是解析binary log来完成数据同步的。源码地址:https://github.com/alibaba/c…
thumbnail
使用Serverless + TravisCI 持续构建Hexo
之前使用过Netlify持续构建我的Hexo博客,比较方便,但是访问速度太慢了,不敢恭维所以考虑迁移到Coding Pages上面来,但是本地构建Nodejs环境还是比较麻烦,需要装一堆东西,这次又研究了一个比较好的方案,大致流程如下: 在语雀上编写文章  配置语雀仓库的Webhook通知,当更新文章时通知给Serverless  使用腾讯云提供的…
thumbnail
SpringBoot与Vue前后端分离最佳实践
前后端分离的开发模式大家都很清楚了,甚是麻烦: 前端启动webpack-dev-server后端启动接口服务开启代理服务器,前端通过代理服务器请求后端接口(解决跨域问题) 但是这些东西对于后端来说,太麻烦了,直接把前端打包好的dist文件丢到后端静态服务器里面就好了。至于前端的webpack-dev-server热部署特性,改完前端代码立即在浏览器…
thumbnail
Kotlin杀手级特性-空安全
Kotlin相对于Java来说,有一个显著的特点,就是它致力于消除空引用所带来的危险,在Java中,为了避免NullPointerException的出现,我们需要不厌其烦的使用if (value != null) {} 来处理这种问题(虽然在JDK8之后有了更好的方式) 在Kotlin中很好解决了这个问题,下面来看看它是如何做到的。 数…
thumbnail
Golang实现HTTP请求限流
在高并发应用场景中,为保证业务高峰期系统的稳定性或抵御CC攻击,最有效的方案为(缓存、降级、限流)本文以限流为例,在Golang中示例如何通过中间件实现httpserver限流。 依赖 首先安装一个基本的限流算法包,然后为了方便,直接使用gin作为httprouter(后面会用到它的中间件) $ go get -u golang.org/x/tim…
thumbnail
macOS自动化神器Hammerspoon
Hammerspoon 是 macOS 上一个强大的自动化工具,是一款开源软件,但安装之后 Hammerspoon 默认什么功能也没有,所有的功能都在 Lua 脚本中,需要用户自己编写。Hammerspoon 可以让用户通过 Lua 脚本直接调用 macOS 提供的 API,能做的事情既有自定义快捷键这种简单操作,也能实现连上家里 Wi-Fi 后自…
thumbnail
GraphQL::为API而生的查询语言
概述 GraphQL是Facebook开源的API查询语言,类似于数据库中的SQL。作为比较,RESTful API依赖于后端隐式的被动的数据约定,GraphQL更加显式,在获取数据和更新数据时更加主动,所见即所得。详见官网:http://graphql.cn/ 谁在使用? Github早就开放了一套基于GraphQL的api,可以试试。https…