自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

happyJared

做好寫代碼這事

  • 博客(9)
  • 收藏
  • 关注

原创 那些容易被遗忘的 Redis 功能

1. 强大的排序Redis 的 SORT 命令可以对列表(List)、集合(Set)和有序集合(Sorted Set)的元素值进行排序(快排算法)。对列表(List)键进行排序:127.0.0.1:6379> lpush numbers 3 4 1 5 2(integer) 5# 按插入顺序返回列表元素127.0.0.1:6379> lrange numbers ...

2019-03-27 13:32:39 166

原创 如何优雅的设计 Spring Boot API 接口版本号

一般来说,系统上线以后,需求仍会发生变动,功能也会迭代更新。可能是接口参数发生变更,也有可能是业务逻辑需要调整,如果直接在原来的接口上进行修改,必然会影响原有服务的正常运行。常见的解决方案,是在接口路径中加入版本号用于区分,此外还可以在参数甚至 header 里带上版本号。这里以在请求路径中带上版本号为例,如:http://IP:PORT/api/v1/test ,v1 即代表的是版本号。当然了...

2019-03-27 13:31:54 4802 7

原创 携程 Apollo 配置中心:Example

本文介绍如何基于 Spring Boot 来搭建 Apollo 客户端,并展示如何动态更改运行时服务的输出日志等级。参考阅读 Apollo · Java 客户端使用指南 以及 Apollo · 使用示例搭建客户端加入依赖 <dependency> <groupId>com.ctrip.framework.apollo</groupId&...

2019-03-27 13:31:05 273

原创 如何在 Jar 包外管理 Spring Boot 应用的配置文件

常见的 spring boot 应用多是打包成 jar 包运行在服务器,这包含了一系列的配置文件以及第三方的依赖,不过这也引发了常见的思考:除application.properties之外的其它配置文件变动,是否需要重新打包再重新部署?如日志配置文件、mybatis 的 xml 文件。先来看看 Spring Boot 是如何加载核心配置文件的,在org.springframework.boot...

2019-03-27 13:29:36 286

原创 携程 Apollo 配置中心:Quick Start

Apollo(阿波罗)是携程开源的分布式配置中心,能够集中化管理不同环境、不同集群的应用配置,配置修改后能够实时推送到客户端,具备规范的权限、流程治理等特性,适用于绝大多数的微服务配置管理场景。详细的介绍可点击 Apollo Wiki 进行了解,本文基于简单的本地部署和 Docker 部署示例进行演示。本地部署下载 Quick Start从 github checkout ,项目地址:h...

2019-03-07 13:30:00 1759

原创 基于 Spring Data JPA 聊聊悲观锁和乐观锁

举个场景:多线程、多进程应用在对数据库的同一数据进行非幂等操作时,如果没有添加相应的锁机制进行校验、判断,通常会导致数据的脏写。抛开分布式锁这种解决思路,简单的来讲,可以优先考虑从数据库层面去解决这个问题。数据库锁分为乐观锁和悲观锁,前者适合读多写少的场景,后者适合读少写多的场景。乐观锁的实现通常是采用加版本号的形式,即如果更新时版本号未发生改变,则本次操作是成功的,且当前版本号的信息也相应会发...

2019-03-01 17:30:24 1386

原创 Java 获取视频时长及截取帧截图

前言只是最近碰到有这方面的项目需求,所以简单 Mark 下本文。下面的示例是参考过他人分享的文章,之后本人再自行实践、调整和测试过的,希望对有这方面需求的人有所帮助。示例添加依赖 &lt;dependency&gt; &lt;groupId&gt;org.bytedeco&lt;/groupId&gt; &lt;artifa...

2019-03-01 10:59:24 5932 6

原创 Python 程序打包工具:py2exe 和 PyInstaller

通常执行 python 程序要有相应的 Python 环境,但某些特定场景下,我们可能并不愿意这么麻烦的去配置这些环境(比如将写好的脚本发给客户进行操作),如果可以提前将程序打包成 Windows平台的 .exe 文件或者是Linux下的 .sh 脚本,那么使用起来就会方便很多,py2exe 和 PyInstaller 这两款工具都是干这么个事的,下面以 hello.py 脚本(代码内容如下)为例...

2019-03-01 10:58:22 434

原创 Spring Boot 项目参数校验的常见使用场景

可以说几乎所有的应用场景中,参数验证都在编写业务逻辑前完成,严格确保进来的数据是合法且符合要求的。Java Web 开发领域,也早有较为完善的 Bean Validation 为 Java Bean 验证定义了相应的元数据模型和 API。首先,在项目中引入 web 模块的依赖: &lt;dependency&gt; &lt;groupId&gt;org.springframework.bo...

2019-03-01 10:57:17 923

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除