自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 API规范管理Springfox-swagger

API规范管理Springfox-swagger首先了解下OAS不废话了,直接上配置了代码,看看怎样将自己的API在Spring boot中进行规范化管理: 首先了解下OAS OAS是OpenAPI Specification的简称,可以翻译为OpenAPI规范,它是定义API的一种规范,它的前身...

2020-06-02 10:52:32 12 0

原创 kubeadm 安装k8s

在集群化部署上本人也算是一个名副其实的小白。之前在金山软件从事WPS产品型研发,然后投入到企业级产品研发,发现产品工具性的研发性质和企业性系统研发2种类型的开发模式完全不一样。最近2、3年全栈开发工程师、DEVOPS开发工程师的崛起,对于程序开发工程师的要求越来越高,在技术等级提升上也要求能够在运...

2020-04-22 09:00:55 32 0

原创 docker随身笔记之rabbitMQ 安装

docker安装rabbitMQ命令非常简单,依次执行以下命令即可。 docker pull rabbitmq:managemen #拉取rabbitmq 镜像文件 docker run -d --hostname my-rabbit --name rabbit -p 15672:156...

2020-04-20 10:49:18 34 0

原创 docker应用安装之部署Springboot项目

docker部署springboot项目分为以下2步 springboot项目的JAR包生成镜像文件。 将镜像文件生成容器,并完成部署。 一、springboot项目的JAR包生成镜像文件 编写Dockerfile文件。 执行以下命令: mkdir docker #创建docker文件...

2020-02-01 15:13:42 111 0

原创 docker随身笔记三之安装jenkins

一、采用docker命令行安装jenkins docker run -d -p 8080:8080 -p 50000:50000 -v jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkin...

2019-12-31 17:52:45 24 0

原创 docker随身笔记二之安装redmine

执行 docker search redmine ,如截图所属可以找到所有关于redmine的版本及其信息 docker pull redmine ,从镜像厂库拉取最新版的 redmine docker images ,查看镜像,如下图所示,redmine镜像为最新版本 因为redmine需...

2019-12-30 21:31:01 113 0

原创 docker随身笔记一 docker的安装、mysql的安装和Nginx安装

一、安装平台和工具,阿里云 + xshell。 二、docker安装。 yum install -y yum-utils #安装工具包,缺少这些依赖将无法完成 yum-config-manager --add-repo https://download.docker.com/linux/...

2019-12-05 16:47:08 42 0

原创 k8s随身笔记一

1、kubectl create -h 创建资源帮助,列出所有能create的资源。 kubectl create namespace develop ,创建命名空间为develop的资源,命名空间用于区分部署环境,例如开发环境、测试环境、生产环境等。 kubectl create depl...

2019-10-08 22:36:59 17 0

转载 dex2jar 和 jd-gui 的安装与使用

https://blog.csdn.net/katrinawj/article/details/80016315

2019-05-10 14:41:43 57 0

原创 Cordova 自定义插件开发

1、安装nodejs(自动包含npm) 2、在命令行中通过npm语句npm install -g cordova安装cordova(如果提示网络连接失败,需要设置网络代理,搭理网址:npm config --global set registry http://registry.cnpmjs.o...

2019-04-21 18:25:55 80 0

原创 Cordova混合开发之环境初始化。

1、安装nodejs(自动包含npm) 2、在命令行中通过npm语句npm install -g cordova安装cordova(如果提示网络连接失败,需要设置网络代理,搭理网址:npm config --global set registry http://registry.cnpmjs.o...

2019-04-15 16:25:42 198 0

原创 okhttp详解之连接池

本文,主要分析以下几个问题: 连接池ConnectionPool的定义及其详解。 连接connect复用详解。 connet清理。 访问同一个地址的socket复用详解。 .服务器重新定位, 包括IP地址重新定位、代理proxy重新定位。也就是如果当集群服务器存在多个代理,代理存...

2018-11-22 10:54:58 707 0

原创 RestTemplate 解析

本文主要讲解RestTemplate 的原理,具体的使用会链接其他博文。 RestTemplate的本质就是再Http的网络请求中增加一个马甲,用户只要通过 url即可进行服务器访问,也就是RestTemplate底层只是封装了一层网络请求,这就是RestTemplate的本质所在。 Res...

2018-08-15 18:01:46 1209 0

转载 Activiti之框架解析

这里写链接内容

2018-08-15 09:43:10 153 0

原创 Volley 详解之学到的不仅仅是volley

Volley是谷歌提供的网络访问框架,具体优缺点如下。 volley优势: 1. volley 存在2类线程,缓存线程 和 网络访问线程,默认会开取 1个缓存线程、4个网络访问线程。 2. volley 通过 采用 diskCache(磁盘缓存) + 内存缓存(缓存header信息) +...

2018-08-08 11:52:53 232 0

原创 okhttp之 header详解

Http 的请求 和 应答包括 header部分 和body部分,以下对header部分进行详解,仅供参考。 Request的header注释: Header注释示例 Accept 指定客户端能够接收的内容类型 Accept: text/plain, text/html Accept...

2018-05-09 10:12:47 5062 0

原创 android 屏幕适配方式

1、onCreate中setContentView的时候,根据获取的手机设备屏幕参数来选择不同的配置文件。 2、通过android会根据不同的屏幕尺寸来选择不同配置文件夹的配置文件。 android 3.2版本之前的。 layout-large,layout。7寸以上的屏幕android系...

2018-04-24 17:52:28 118 0

原创 深入剖析ThreadLocal

ThreadLocal即是本地线程,ThreadLocal为每个线程创建一个变量副本,只有本线程才可见,因此就解决了多线程并发问题,ThreadLocal维护一个ThreadLocalMap表,本表即是存储副本的map表。 详见以下链接。 http://www.cnblogs.com/dolp...

2018-04-24 17:52:19 66 0

原创 java IO 和 NIO 的差异及其选择

当学习了Java NIO和IO的API后,一个问题马上涌入脑海: 我应该何时使用IO,何时使用NIO呢?在本文中,我会尽量清晰地解析Java NIO和IO的差异、它们的使用场景,以及它们如何影响您的代码设计。 Java NIO和IO的主要区别 下表总结了Java NIO和IO之间的主要差别,...

2018-04-24 17:52:08 542 0

原创 JAVA8的新特性

1、内部访问外部变量。1.8之前需要在外部变量加上final关键字,1.8的半边无需加该关键字,但是外部变量的值还是不能修改。 2、@FuncitonInterface,1.8之前的版本,JAVA是不支持多继承的,但到了1.8版本之后增加本函数接口,即是函数中有且只有一个抽象方法,可以用defa...

2018-04-24 17:51:58 50 0

原创 MVC 、MVP详解 及其 MVC 在安卓系统中的具体应用

MVC框架 MVC是将业务逻辑、界面进行解耦,通过中间的Control对界面数据和操作进行处理,然后将处理结果反馈给业务逻辑层也就是Modle。 Modle:业务逻辑层,本层是应用数据的核心,例如数据库和表 View:视图层,其是接收用户操作 和对model数据的展示。 Control:控制器...

2018-04-24 17:51:46 75 0

原创 ListView 和 RecyclerView 比较

1、ListView 与 RecyclerView 均是通过复用ItemView的原理来展示大量数据的控件。 2、ListView 使用了2级缓存,RecyclerView使用了4级缓存,多了对ItemView的缓存mCacheViews和增加一个共用缓存池RecyclerViewPool。 ...

2018-04-24 17:51:34 135 0

原创 android和设计模式随谈之装饰模式

1、装饰模式。 装饰模式的现实生活理解,例如现在有一扇窗户,窗户只有普通边框和玻璃,有一天我需要把这散窗口换成有花纹边框的窗户。这个时候怎么办呢?有2种方式,第一种去买一些装饰花边,对窗户的边框进行装饰一下;第二种换掉目前的窗户,买一扇带花纹边框的窗户,替换过程有两种代价,一是替换后花的金钱(...

2018-04-24 17:51:24 58 0

原创 android和设计模式随谈之原型模式(Prototype)

原型模式一般采用clone来实现,通过拷贝来获取和这个对象一模一样的数据。 clone分为浅拷贝和深拷贝,浅拷贝只会备份一些值变量,例如int,float,double等,对于引用变量,则只是拷贝了一份引用,如果改变本应用的值,其他浅拷贝的引用变量都会变化;深拷贝的话,值变量和引用变量都会增加一...

2018-04-24 17:51:14 105 0

原创 android和设计模式随谈之策略模式

软件开发过程中,为了实现某一个功能可以有多重算法或者策略,把各种算法封装起来,可以相互替代,这种模式就是策略模式 讲各种算法抽象成统一接口,根据业务需求,传入不同的算法,则就实现了动态替换。 android中的策略模式应用实例,值动画中的插值器模式,有三种 匀速插值器、加速减速插值器、减速插值...

2018-04-24 17:51:03 47 0

原创 Android内核剖析之Android总架构

Android总体架构从上往下分为4层: 应用层,各种APP,包括界面、JAVA语言编写的控制、Home界面、资源文件等。 应用框架层,android的管理工具,例如Activity Manager、Window Manager、ContenProviders、View System、Reso...

2018-04-24 17:50:49 341 0

原创 Android内核剖析之Framework框架

Framework框架包含3个主要部分,服务器端、客户端、Linux驱动 服务器端主要包含以下2个主要的类: AMS(ActivityManagerService),AMS的主要作用是管理各个Activity。 WMS(WindowManagerService),WMS主要管理各个窗口的叠放...

2018-04-24 17:50:31 270 0

原创 Android性能分析和优化之 Analyze Apk

Analyze Apk 工具,通过 android studio -> build -> Analyze Apk 可以启动。 Analyze Apk 工具是一个逆向分析工具,主要对现有app包进行分析,包括结构、各个模块所占用的空间大小,各个模块所占用空间的百分比等...

2018-04-24 17:50:03 596 0

原创 Android性能分析和优化之traces.txt(ANR分析)

ANR 类型分类。 1、 KeyDispatchTimeout(5 seconds) –主要类型按键或触摸事件在特定时间内无响应。按键或者触摸引起的ANR的时间定于是在AMS中 static final int KEY_DISPATCHING_TIMEOUT = 5*1000 设置的。 2、...

2018-04-24 17:49:52 3102 0

原创 Android内存管理

本部分将分两部分来讲解。 1、android 内存回收机制,即采用了 Low Memory Killer。 2、正对Low Memory Killer回收机制,那么应用程序需要在 onLowMemory 和 onTrimMemory 方法中怎么处理,来降低系统对APP进程的回收率。 第二步;...

2018-04-24 17:49:14 305 0

原创 Handler运行机制详解

1、android线程间的通讯,都是经过Handler在线程之间的切换。包括耗时任务的结果传送到UI线程等。 2、Handler使用包括2种形式,一种是主线程和子线程的交互,另外一种是子线程和子线程之间的交互。 3、Handler的创建,主线传入Looper.getMainLooper;如果是...

2018-04-21 21:48:34 180 0

转载 可重入锁ReentrantLock详解

https://www.cnblogs.com/zhengbin/p/6503412.html

2018-04-09 23:03:56 79 0

原创 Android性能分析和优化之Trace View、Dump View Hierarchy

trance view。 a、打开 androd stuido -> tools -> android device Monitor (DDMS)。 b、在 DDMS中 选择进程启动 start method profiling(trace view) 见下图:...

2018-03-28 17:45:20 680 0

原创 JAVA多线程并行计算乐观锁之Atomic系列详解

从多线程并行计算乐观锁 和 悲观锁 来讲,JAVA中的 lock、synchronized 属于悲观锁,即是在操作某数据的时候总是会认为多线程之间会相互干扰,属于阻塞式的加锁;Atomic系列则属于乐观锁系列,即当操作某一段数据的时候,线程之间是不会相互影响,采用非阻塞的模式,直到更新数据的时候...

2018-03-27 14:43:22 744 0

原创 JAVA虚拟机JVM详解

JVM的特点:JAVA是跨平台的,原因就是JAVA代码经过编译器编译成.CLASS文件,也就是字节码,字节码经过JVM的JIT编译成机器码,机器码不分平台,可以跑在不同平台上,因此JAVA实现了跨平台。 JVM的物理结构如下: 通过以上图可以知道JVM的物理结构分为 类记载器、方法区、J...

2018-03-26 16:39:24 204 0

原创 JAVA中的乐观锁和悲观锁

乐观锁:当处理数据的时候,乐观的认为处理数据过程不会发送多线程冲突,代表AtomicInteger 的CAS(Compare And Swape) ,就是处理数据的时候不会对本段处理过程进行加锁,当更新数据的时候再进行判定数据是否已经发送了冲突或许修改,如果已经冲突则返回失败信息交给用户处理。 ...

2018-03-23 15:58:34 229 0

转载 App保活详解之进程重启

链接:https://segmentfault.com/a/1190000006251859

2018-03-20 01:16:31 122 0

转载 JAVA的GC详解

转接地址:http://blog.csdn.net/d6619309/article/details/53358250

2018-03-18 01:38:56 82 0

原创 volatile、atomic、reentrantLock、synchronized区别详解

JAVA的内存模块,JAVA的内存模块特点,原子性、可见性、有序性。例如:int i = 0,是原子性操作,i++非原子性操作;有序性是指同一个线程中,程序的前面代码必须执行完毕之后才会执行后面代码;可见性是指,CPU拥有缓存,一般都是从内存中读取数据到CPU缓存,然后经过多次计算和处理的中间结...

2018-03-17 01:04:35 766 0

原创 JVM、Dalvik、ART 3中虚拟机的区别

JVM是JAVA的虚拟机,基于栈的, JVM将JAVA代码编码成.class类型文件。 Dalvik是android的虚拟机,Dalvik是基于寄存器的,速度回更快,并且Dalvik把代码编译成.dex文件,本类型文件更适合与于手机。 Dalvik是JIT(即时编译),因此每次启动运行程序,Da...

2018-03-16 23:51:33 89 0

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