
笔记
文章平均质量分 66
zhg_vincent
世界上聪明的人到处有,为何不能算我一个
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java 获取过去24小时、一周、一个月的日期
背景 一种常见的需求是获取当前时刻的过去24小时小时数、过去一周的日期,过去一个月的日期等等,由于该类需求比较常用,而且其中也涉及闰月、平月的概念,故把这几个方法整理了一下以备不时之需。实现 分别对过去24小时、过去一周、过去一个月需要返回的东西进行抽象成POJO类,其中参数可根据实际需求自定义修改。 以下类设置两个list存放过去24小时的日期数+小时数,以及小原创 2020-12-09 20:45:22 · 1885 阅读 · 0 评论 -
微服务后端查询超时立即返回的处理方法
背景描述 功能:向用户提供区间可查询,用户输入时间区间,或者其他特定参数,后端调用底层平台获取数据后再进行业务处理、分页等封装以便展示。 问题:1. 当用户输入时间区间过大可能会导致跨平台查询底层数据量过大,查询速度慢、超时、撑爆内存,进而造成服务卡死或宕机。2. 由于数据量的多少和时间区间的长短并无之间联系(数据量多少与业务有关,有时候一秒内几千笔,而有时候数小时内都可能无记录),因此输入区间限制不宜在前端控制原创 2020-12-02 19:31:29 · 1637 阅读 · 0 评论 -
Apollo配置中心搭建笔记
由于现在服务器启动的时候会有很多配置文件需要加载,而且有多套环境时,会有部分配置不同,所以管理起来不太方便,就可以使用携程的apollo来进行统一管理由于apollo是新出来的配置中心,更新很快,年初使用的0.几的版本还需要自己打包,现在1.0版本出来之后,不需要自己打包了,只需要下载官方的压缩包,然后自己修改配置就能使用下面就记录一下我操作的过程,避免一段时间后又忘记了创建数据库SQL脚本:https://github.com/ctripcorp/apollo/tree/master/scri.转载 2020-07-22 15:58:25 · 653 阅读 · 0 评论 -
MySQL和PostgreSQL设计规范
MySQL&PostgreSQL设计规范1. 设计工具使用Navicat Data Modeler进行数据库设计,使用*.ndml文件交流设计细节,不允许直接操作数据库进行修改修改数据库一定要同步更新本地的.ndml文件,避免因开发环境异常而导致数据库丢失,demo测试数据或初始化数据要以sql脚本协议代码中*字符集:统一使用utf-8字符集, 按中文排序2. 命名规范2.1 ...原创 2020-06-30 09:45:58 · 990 阅读 · 0 评论 -
@Pattern注解中常用的校验正则表达式札记
1 前端传参要求项目开发中经常会遇到对用户输入内容的限制,本篇对常用限制做一总结。如图所示,标识字段有严格字符限制,用户输入校验这部分工作前端可以做,当然后端也可以通过在DTO中添加注解的方式实现参数校验。DTO中代码如下:@Datapublic class ProjectDTO { @NotBlank(message = "项目名不能为空") private Stri...原创 2020-05-07 21:04:08 · 4906 阅读 · 0 评论 -
QGIS获取城市路网数据(经纬度)
1 前言本文介绍如何通过QGIS来获取境内任意城市的路网数据(经纬度坐标),并以上海市为例,一步步演示最终得到全市路网的百度坐标。1.1 准备工作下载QGIS(本文所用版本:QGIS-OSGeo4W-2.18);下载完成后双击安装。安装完可以设置语言为简体中文Setting→Options→Locale→Override system locale→中文。下载QGIS的坐标转换插件Ge...原创 2020-04-25 10:45:06 · 16663 阅读 · 19 评论 -
springboot利用YamlPropertiesFactoryBean读取自定义yaml配置文件
首先确保依赖已被添加:// https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-configuration-processorimplementation 'org.springframework.boot:spring-boot-configuration-processor:2.2.6.RELE...原创 2020-04-03 16:39:27 · 3228 阅读 · 1 评论 -
微服务后端接口开发及返回值规范札记
请求接口及返回值规范[HTTP&RPC]0. 禁止规则&设计原则任何接口不允许使用编程语言相关的扩展名,可以使用与返回值类型相关的扩展名 (安全角度考虑,将泄漏后端语言或框架)接口名不允许以/结尾 (搜索引擎优化角度考虑,一个同样的页面不应该有两个地址,会被搜索引擎认为是作弊,搜索引擎对无/的地址支持更加友好)接口应该尽量的少, 后端接口不应该因前端的简单格式调整或者查询...原创 2020-05-03 15:43:17 · 7126 阅读 · 0 评论 -
线上CPU100%,频繁FullGC排查套路笔记
背景介绍对于线上系统突然产生的运行缓慢问题,如果该问题导致线上系统不可用,那么首先需要做的就是,导出 jstack 和内存信息,然后重启系统,尽快保证系统的可用性。这种情况可能的原因主要有两种:代码中某个位置读取数据量较大,导致系统内存耗尽,从而导致 Full GC 次数过多,系统缓慢。代码中有比较耗 CPU 的操作,导致 CPU 过高,系统运行缓慢。相对来说,这是出现频率最高的两种...原创 2019-10-10 16:04:20 · 395 阅读 · 1 评论 -
Centos基础与安装
Centos基础与安装Centos安装1. Linux版本衍生|-AT&T Unix: AT&T最初研发,后与Western Electric公司组建贝尔实验室继续研发 Unix 来自 UNIX 为 UNICS的谐音(UNiplexed Information and Computing Service) 而 unics Brian Kernighan是对 Multiplex...原创 2019-09-25 19:52:44 · 410 阅读 · 0 评论 -
redis.clients.jedis.exceptions.JedisConnectionException之异常解决
文章简单介绍了redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: Read timed out和redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool两种异常的产生原因,并最后给出解决方法,亲测有效。原创 2019-09-25 19:57:26 · 8108 阅读 · 4 评论 -
okhttp3之java.net.SocketTimeoutException: timeout 异常处理
背景介绍 项目中开启线程池下载图片,okhttp报错如下: 一直沿用以前开发的工具类(将okhttp客户端封装成了单例模式),之前开发的项目涉及到的网络请求未出现过类似异常,而这次由于图片下载量大,线程数量多,造成socket超时。 之前的工具类:pu...原创 2019-09-25 19:50:10 · 40820 阅读 · 4 评论 -
百度坐标转换,以及国测局、WGS84(GPS)坐标系之间的转换札记
背景介绍 坐标系转换,网上内容也比较多、也比较杂,有的可以运行,有的则各种问题,这里记录并加以补充,最后封装了常用坐标系转换工具。亲测可运行!WGS84:即地球坐标系,国际上通用的坐标系。谷歌地图采用的是WGS84地理坐标系(中国范围除外)GCJ02:即火星坐标系,中国国家测绘局制订。由WGS84坐标系经加密而成,谷歌中国地图和搜搜中国均采用的...原创 2019-08-02 18:08:01 · 7187 阅读 · 3 评论 -
基于webmagic框架的多主题爬虫关键词切换
1、背景介绍 多主题爬虫中,我们一般先分析网站的url特点(重点是列表页),再根据项目需求预先设定好关键词,对待爬取url,或者称为种子url进行精准控制。1.1、分析一 带关键词的url场景有很多,如网站的特定版块、某模块发送的AJAX请求等都嵌入了关键词。 eg:我们需要爬取同程旅游网杭州的旅游景点信息,url是:https://so....原创 2019-09-25 19:55:31 · 654 阅读 · 0 评论 -
Mybatis Mapper接口如何找到实现类
1、前言 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。我们在使用 Mybaits 进行开发 ,通常只需要定义几个 Mapper 接口,然后在编写一个 xml 文件,我们在配置文件中写好 sql , Mybatis 帮我们完成 M...原创 2019-05-18 21:47:43 · 2625 阅读 · 0 评论