Reed's Blog

Thinking is hard but relinquishing is easy.

解决微信小程序获取验证码图片时无法携带Cookie的问题

前言 一般为了防止机器登录Web网站,我们都会要求输入验证码来进行登录操作。这次就遇到一个已经投入使用的网站需要一个微信小程序,接口都是通用的也不存在什么大的问题,可是验证码这里就有点麻烦了。 解决 我们知道,微信小程序在发起请求的时候是不会保存登录态(Cookie)的,所以需要我们自己手动来保存获取到的Cookie。 获取验证码并显示也不例外,我们可以将验证码的接口url直接写入验证码图...

Spring Boot Admin配置

前言 Spring Boot Admin是基于Spring Boot Actuator扩展的一款可视化应用监控框架,分为server和client端,需要被监控的项目属于客户端,这样当有多个不同的项目需要管理时,它们都去服务端注册自身,在Spring Boot Admin的管理界面可以统一查看。同时可以根据服务发生的变化进行消息通知,发邮件等等。 需要注意的是,这里采用的为2.1.3版本,...

Spring项目获取到的时间相差8个小时

前言 后端返回数据的时候若是使用了@ResponseBody注解,Date类型的字段在返回到前端之后,与实际的时间有区别,一般是相差8个小时。 实际是 2019-02-28 21:53:11 前端收到的是 2019-02-28 13:53:11 解决 这8个小时呢,其实就是因为我们位于GMT+8时区,而Jackson在对时间字段进行序列化的时候,默认获取到的时间是零时区,所以做了一...

Spring Boot集成Shiro + Redis

介绍一下通过基于角色的权限验证的Shiro配置

前言 在Spring中主流的安全框架有Spring Security和Apache Shiro,两者各有特点,这里介绍一下Apache Shiro的简单配置(使用Redis存储缓存)。 正文 配置依赖 在build.gradle中引入所需依赖(当然提前安装好Redis是必需的) // https://mvnrepository.com/artifact/org.crazycake...

Mybatis-Generator自动创建实体类的时候没有update语句

Cannot obtain primary key information from the database, generated objects may be incomplete

前言 在使用Mybatis-Generator自动创建实体类的时候,创建成功了,但是输出了这样的信息: > Task :mbGenerator [ant:mbgenerator] Cannot obtain primary key information from the database, generated objects may be incomplete 并且生成的.xml...

html页面加载进度条插件Pace.js介绍

让数据加载的过程不再空旷

前言 网页在加载的过程中,由于网络延迟和数据量的关系,页面加载的时间因人而异,数据量我们可以通过分页来解决,网络延迟便可以增加页面加载进度提示,让用户知道页面页面正在加载而不是卡死了:(. 这里介绍一个轻量级的进度条插件Pace.js,它自动监控Ajax请求,事件循环延迟,文档就绪状态以及页面上的元素以显示进度。 使用 pace.js的官网在这里. 首先在JavaScript引...

Java代码实现抽奖

不同抽奖次数中奖率不同

前言 嗯…博客停更了这么久,有考试的原因也有项目加班的原因,还是自己因为放假了就跑去耍了~ 在最近的项目里面需要实现一个抽奖的功能,并且不同抽奖次数的中奖概率是不同的呢(都是套路啊!) 实施固定概率抽奖 原理 说到抽奖其实就是概率的问题,这是便想到了Math.random()这个函数,它可以为我们产生一个Double类型的数字, 伪随机数在范围[0,1),也就是说,从0(包括0...

Spring Boot出现方法不会覆盖或实现超类型的方法

前言 一个有趣的错误,记录一下 内容 今天在微服务里新增一个Spring Boot项目,心想着反正是别的服务调用,前端也不需要直接访问它,那么我就可以不需要Tomcat了,还可以简化启动。Gradle依赖便是这样的: dependencies { compile( 'org.springframework.boot:spring-boot-starter-d...

IDEA启动Spring Boot出现yml文件错误

解决 出现这个问题呢,是因为Spring Boot默认的application.propertities文件编码是GBK,我们在IDEA的右下角可以看到。 所以我们需要将它修改为UTF-8即可,点击IDEA右下角的GBK,提供了多种选择,这里我们点击UTF-8。 如果文件里包含中文,会出现这样一个提示。 我们点击Convert,将中文字符转换为UTF-8编码就好了。 然后启...

Linux安装并使用ssr客户端

linux使用ssr客户端简易脚本

引子 也许是使用Linux的大佬都不屑于写这么简单的教程吧,所以关于如何在Linux上安装使用ssr客户端的教程比较少又比较模糊。 所以我就来写这个教程吧,同时因为Linux克隆GitHub的仓库奇慢并且可能会出现超时的情况(在此感谢GFW),文中及脚本的Git仓库均位于我自己搭建的gogs。 安装 首先确认一下自己自己安装了Git。 ubuntu sudo apt-get insta...