自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhujianlin1990的专栏

一点点的积累终将带来优异的表现

原创 HttpClient-4.5.2 实战

介绍:HttpClientFactory 相当与一个存储<String name,HttpClient instance>的map,不同业务需要不同的HttpClient。HttpClientUtil是一个工具类,以execute模版方法为核心,其他都是快捷方式。剥离出HttpClie...

2020-01-16 13:52:13 134 0

转载 HttpClient-4.5.2官方教程完整翻译

HttpClient 4.5.2 前言 超文本传输协议(HTTP)可能是当今互联网上使用的最重要的协议。 网络服务,支持网络的设备以及网络计算的发展继续扩大了HTTP协议在用户驱动的Web浏览器之外的作用,同时增加了需要HTTP支持的应用程序的数量。 尽管java.net包提供了通过HTTP...

2020-01-08 19:00:48 68 0

转载 Spring常用的三种注入方式

Spring通过DI(依赖注入)实现IOC(控制反转),常用的注入方式主要有三种:构造方法注入,setter注入,基于注解的注入。 构造方法注入 先简单看一下测试项目的结构,用maven构建的,四个包: entity:存储实体,里面只有一个User类 dao:数据访问,一个接口,两个实现类 s...

2019-12-24 16:53:07 47 0

原创 mock生成java对象(支持集合嵌套)

import org.reflections.ReflectionUtils; import java.lang.reflect.Array; import java.lang.reflect.Field; import java.lang.reflect.ParameterizedType; ...

2019-11-05 18:56:11 220 0

原创 K8S如何通过configmap将环境变量注入springboot应用

首先又一个开发环境的应用变量配置文件 demo-dev.properties demo.jdbc.url=jdbc:mysql://127.0.0.1:3306/my_testdb?useUnicode=true&amp;characterEncoding=utf8&amp;...

2019-09-27 16:46:29 1645 0

原创 mac解压jar文件

命令格式:tar -zxvf <源jar文件>-C <目标目录> -z:有gzip属性的,可选 -x:解压,必须 -v:显示所有过程,可选 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接jar名,必须 -C:指定目标目录,必须预先存在 ,可选,...

2019-09-24 19:30:09 6063 3

原创 菜单树Java实现

import java.io.Serializable; import java.util.ArrayList; import java.util.List; import com.alibaba.fastjson.JSONObject; /** * 描述:简单树型结构,一定要正确构建,否则...

2019-07-30 15:45:34 109 0

原创 为什么开发过程中debug模式和run模式启动Java应用耗时差距越来越大

检查下是不是设置了过多的断点,如果有清理下。 run模式启动耗时 =debug模式启动耗时 +各个断点总耗时 随着开发活动的进行,设置的断点越来越多,很多时候记得设置,也记得disable断点,就是没删除,反正很多时候也不会进断点,这就容易让人麻痹大意,然后每次debug启动越来越慢。。。...

2019-06-14 17:21:09 648 0

转载 常用英文命名和缩写

常用英文命名和缩写 英文缩写 中文全称 英文全称 注释 分类 权重 addr 地址 address adm 管理员 administrator app 应用程序 application arg 参数 a...

2019-05-06 11:17:31 276 0

原创 POI若干疑难操作

一、POI控制某列只显示文本 解决问题:身份证号在输入模版文件中显示为科学计数法XSSFCellStyle textColumnStyle = workbook.createCellStyle(); XSSFDataFormat dataFormat = workbook.createDataFo...

2019-04-29 17:27:22 95 0

转载 apache commons工具类简介

一、Commons BeanUtils 说明:针对Bean的一个工具集。由于Bean往往是有一堆get和set组成,所以BeanUtils也是在此基础上进行一些包装。二、Commons CLI 说明:这是一个处理命令的工具。比如main方法输入的string[]需要解析。你可以预先定义好参数的规则...

2019-04-23 17:04:12 120 0

转载 分布式任务框架选型

任务框架需求: 分布式任务框架,需要一个分布式锁,只有获得锁的才能执行任务。 解决方案:redis,zookeeper,DB 运维工具。日志、监控、任务配置等 高可用性。保证任务能够执行,且不重复跑。用途就是在分布式环境使用,可以轻松实现。 第1、3点不复杂代码量也不多,可以自己实现,...

2019-03-30 17:39:27 58 0

转载 java 中的锁 -- 偏向锁、轻量级锁、自旋锁、重量级锁

之前做过一个测试,详情见这篇文章《多线程 +1操作的几种实现方式,及效率对比》,当时对这个测试结果很疑惑,反复执行过多次,发现结果是一样的:  1. 单线程下synchronized效率最高(当时感觉它的效率应该是最差才对);  2. AtomicInteger效率最不稳定,不同并发情况下表现不一...

2019-02-17 15:55:44 59 0

转载 Java并发:volatile内存可见性和指令重排

volatile两大作用 1、保证内存可见性 2、防止指令重排 此外需注意volatile并不保证操作的原子性。 (一)内存可见性 1 概念 JVM内存模型:主内存和线程独立的工作内存 Java内存模型规定,对于多个线程共享的变量,存储在主内存当中,每个线程都有自己独立的工作内存(比...

2019-02-17 11:53:42 86 0

原创 如何重构1000行以上方法或类

有些方法蕴含逻辑复杂,如果顺序编程可能达到千行以上,非常不好维护,看了《重构》这本书的同学可能会说,我可以强制将每个for循环,每段逻辑按照70行每函数方式抽取出来。然而...即使每段都抽取为70行以内(实际5~30行最佳),抽出的代码,大多以私有方法形式放置在同一个类里面,导致类大小膨胀,类的维...

2019-02-15 16:11:25 171 0

转载 扩展ThreadPoolExecutor实现线程池监控

  摘要:背景在开发中,我们经常要使用Executors类创建线程池来执行大量的任务,使用线程池的并发特性提高系统的吞吐量。但是,线程池使用不当也会使服务器资源枯竭,导致异常情况的发生,比如固定线程池的阻塞队列任务数量过多、缓存线程池创建的线程过多导致内存溢出、系统假死等问题。因此,我们需要一种...

2018-12-06 17:07:26 1841 1

转载 GitBook 使用入门

本文选自《Markdown 实用指南》 作者:毕小烦GitBook 是一个基于 Node.js 开发的命令行工具,使用它可以很方便的管理电子书,GitBook 是目前最流行的开源书籍写作方案。使用 GitBook 可以让创作者专注写作,自由的挥洒,不必太多的关心内容排版、发布和版本管理等问题。除了...

2018-05-08 09:26:09 987 0

原创 maven中央仓库下载慢怎么办(如何切换成aliyun仓库)

&lt;mirrors&gt; &lt;mirror&gt; &lt;id&gt;aliyun&lt;/id&gt; &lt;name&gt;aliyun ...

2018-05-07 15:10:16 1357 0

转载 Maven:mirror和repository 区别

1 Repository(仓库) 1.1 Maven仓库主要有2种: remote repository:相当于公共的仓库,大家都能访问到,一般可以用URL的形式访问 local repository:存放在本地磁盘的一个文件夹,例如,windows上默认是C:\Users\...

2018-05-07 15:03:19 231 0

转载 数据库隔离级别---MySQL的默认隔离级别就是Repeatable,Oracle默认Read committed,最高级别Serializable

数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。 注意:我们讨论隔离级别的场景,主要是在多个事务并发的情况下,因此,接下...

2018-04-23 15:32:20 359 0

转载 dubbo从入门到深入——设计原理分析

本文基于dubbo文档,并结合自己的分析\理解。 整体设计 这里写图片描述 Dubbo 的核心领域模型 Protocol 是服务域,它是 Invoker 暴露和引用的主功能入口,它负责 Invoker 的生命周期管理。 Invoker 是实体域,它是 Dubbo 的核心模型,其它...

2018-04-20 16:52:49 418 0

转载 hive数据倾斜原因和解决方法

在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显。主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平均值,而由于数据倾斜的原因造成map处理数据量的差异过大,使得这些平均值能代表的价值降低。Hive...

2018-04-19 12:01:22 5824 0

原创 mongoclient like查询

要查询集合patient_1中name以new开头的用户 db.patient_1.find({name:{$regex:’new’}}); 或者 db.patient_1.find({name:/^new/}) 也能达到一样的效果 用同样的方式在mongoclient上查询第一种语...

2018-04-18 17:37:19 356 0

原创 spark No more replicas available for rdd异常

运行一个客户端模式spark程序出现No more replicas available for rdd异常,如下: 18-04-16 18:01:53,750 INFO [dag-scheduler-event-loop] o.a.s.s.DAGScheduler [Logging.sca...

2018-04-17 17:52:02 5957 0

转载 spark基本概念

spark应用涉及的一些基本概念: 1.mater:主要是控制、管理和监督整个spark集群 2.client:客户端,将用应用程序提交,记录着要业务运行逻辑和master通讯。 3.sparkContext:spark应用程序的入口,负责调度各个运算资源,协调各个work node上的Ex...

2018-04-17 17:06:47 295 0

转载 搭建Spark所遇过的坑

一.经验 1.Spark Streaming包含三种计算模式:nonstate .stateful .window 2.kafka可通过配置文件使用自带的zookeeper集群 3.Spark一切操作归根结底是对RDD的操作 4.部署Spark任务,不用拷贝整个架包,只需拷贝被修改的文件,...

2018-04-17 16:29:16 376 0

原创 分享一个client模式spark程序

spark提交任务有client和cluster两种模式 主要区别:是否将driver程序放在远程worker机器上执行。cluster模式由master挑选一个worker机器放置driver进程。 client模式,也叫交互模式,任务提交后客户端一直保持连接,并即时获得运行的信息。 cl...

2018-04-07 16:26:17 400 0

转载 Apache Spark 内存管理详解

Spark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能调优。本文旨在梳理出 Spark 内存管理的脉络,抛砖引玉,引出读者对这个话题的深入探讨。本文中阐述的原理基于 Spa...

2018-04-03 17:54:13 379 0

原创 sofa snapshot上传到nexus服务器

mvn deploy:deploy-file -DgroupId=com.alibaba.sofa -DartifactId=sofa-common -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar -Dfile=/Users/zhujl/test2/sofa-co...

2018-03-29 12:03:08 755 0

转载 数据库的隔离级别以及悲观锁和乐观锁详解

原文 http://blog.csdn.net/xiaokang123456kao/article/details/75268240 一、事务四大属性 分别是原子性、一致性、隔离性、持久性。 1、原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此...

2018-03-10 12:24:32 181 0

转载 数据库四种隔离级别

(零)没有并发控制 存在的问题:更新遗失。 解决办法就是下面的“可读取未确认”。 (一)可读取未确认(Read uncommitted) 写事务阻止其他写事务,避免了更新遗失。但是没有阻止其他读事务。 存在的问题:脏读。即读取到不正确的数据,因为另一个事务可能还没提交最终数据,这个读...

2018-03-10 12:11:09 224 0

转载 JVM原理讲解和调优

一、什么是JVM    JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。    Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这...

2018-03-06 15:28:18 121 0

原创 一个完整的支付宝sofa框架demo

最近在研究《实现领域驱动设计》这本书时,发觉支付宝刚开源了一个领域驱动设计的框架Sofa。观察demo后发觉不够完整,于是补充了web及数据库功能供大家参考。 快速开始 1 git clone &lt;工程地址&gt; 2 编译环境要求JKD8+,maven3...

2018-02-26 18:34:49 12568 9

原创 ODPS表如何转javabean

codegen4odps 一款自定义模版的ODPS表转java pojo的ORM代码生成工具 快速入门 clone代码 git clone git@github.com:YaoLin1/codegen4odps.git 编译 在codegen4odps目录下执行编译...

2018-02-09 17:35:31 287 0

原创 一款自定义模版的代码生成工具

codegen 一款自定义模版(freemarker)的代码生成工具 快速入门 clone代码 git clone git@github.com:YaoLin1/codegen.git 编译 在codegen目录下执行编译命令 mvn clean packag...

2018-02-09 15:57:55 3054 0

原创 mac如何使用infer进行maven项目源码静态分析

>安装infer  brew install infer >查看版本号 infer --version Infer version v0.13.0 Copyright 2009 - present Facebook. All Rights Reserved > c...

2018-01-15 11:14:03 311 0

原创 springboot热部署未生效怎么办

springboot热部署未生效怎么办 热部署:当发现程序修改时自动启动应用程序。spring boot为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用。原理使用了两个Clas...

2017-11-10 18:40:28 7019 0

原创 记一次vue项目打包慢问题--91% additional asset processing 卡住近10分钟

在做vue2+webpack2+elementui项目的时候遇到打包非常慢的问题具体是在91% additional asset processing 卡住近10分钟开发模式启动很快,最终也能正常打包,但是耗费近10分钟,非常影响测试和生产环境部署效率。怀疑各种webpack配置,各种修改,想分...

2017-11-09 19:09:38 8256 0

原创 idea中vue文件内嵌sass/scss片段提示语法错误

idea中vue文件内嵌sass/scss片段提示语法错误 图:问题描述解决办法是在style标签追加属性 rel=”stylesheet/sass” 或者rel=”stylesheet/scss” 图:批量修改 图:效果方法二如果总有个别文件提示语法错误,可以采用选中文件>右键>...

2017-11-09 18:47:49 4786 4

原创 Idea不支持es6语法

一个vuejs项目再idea中显示js语法错误 有两处设置javascript版本处,都改为es6 第一处:IntelliJ IDEA ->Perferences...->Languages & Frameworks->JavaScript  第二处:F...

2017-09-21 17:35:04 13212 2

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