自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 收藏
  • 关注

转载 spring boot实现超轻量级网关(反向代理、转发)

在我们的rest服务中,需要暴露一个中间件的接口给用户,但是需要经过rest服务的认证,这是典型的网关使用场景。可以引入网关组件来搞定,但是引入zuul等中间件会增加系统复杂性,这里实现一个超轻量级的网关,只实现请求转发,认证等由rest服务的spring security来搞定。如何进行请求转发呢? 熟悉网络请求的同学应该很清楚,请求无非就是请求方式、HTTP header,以及请求body,我们将这些信息取出来,透传给转发的url即可。举例:/graphdb/** 转发到 Graph_Ser.

2021-11-05 11:28:25 3436 4

转载 你必须知道的APT、annotationProcessor、android-apt、Provided、自定义注解

你可能经常在build.gradle文件中看到,这样的字眼,annotationProcessor、android-apt、Provided,它们到底有什么作用?下面就一起来看看吧 1、什么是APT? 随着一些如ButterKnife,dagger等的开源注解框架的流行,APT的概念也越来越被熟知。 annotationProc...

2021-07-02 14:50:17 322

转载 gradle中的build script详解

https://www.jianshu.com/p/630206347112简介build.gradle是gradle中非常重要的一个文件,因为它描述了gradle中可以运行的任务,今天本文将会带大家体验一下如何创建一个build.gradle文件和如何编写其中的内容。project和taskgradle是一个构建工具,所谓构建工具就是通过既定的各种规则,将原代码或者原文件通过一定的task处理过后,打包生成目标文件的步骤。所以我们在gradle中有两个非常重要的概念,分别是项目和任务。每一个g

2021-06-29 21:54:21 3035

转载 新颖巧妙易用的Android进程间通信IPC框架

版权所有。所有权利保留。欢迎转载,转载时请注明出处:http://blog.csdn.net/xiaofei_it/article/details/51464518Android进程间通信IPC是比较高级的话题,很多Android程序员碰到IPC就觉得头疼,尤其是AIDL这类东西。公司最近在研究DroidPlugin插件开发,DroidPlugin把每个子app都变成一个进...

2019-10-17 16:52:25 396

转载 Java NIO原理与简单实现

Java NIO 简介JAVA NIO有两种解释:一种叫非阻塞IO(Non-blocking I/O),另一种也叫新的IO(New I/O),其实是同一个概念。它是一种同步非阻塞的I/O模型,也是I/O多路复用的基础,已经被越来越多地应用到大型应用服务器,成为解决高并发与大量连接、I/O处理问题的有效方式。NIO是一种基于通道和缓冲区的I/O方式,它可以使用Native函数库直接分配堆外内存...

2019-10-07 10:33:55 150

转载 JavaNIO详解(二)

异步IO异步 I/O 是一种没有阻塞地读写数据的方法。通常,在代码进行 read() 调用时,代码会阻塞直至有可供读取的数据。同样, write()调用将会阻塞直至数据能够写入,关于同步的IO请参考另一篇文章Java IO。另一方面,异步 I/O 调用不但不会阻塞,相反,您可以注册对特定 I/O 事件诸如数据可读、新连接到来等等,而在发生这样感兴趣的事件时,系统将会告诉您。异步 I/O 的一...

2019-10-07 10:27:11 126

转载 Java NIO 详解(一)

Java NIO 详解(一) </h1> <div class="clear"></div> <div class="postBody"> 一、基本概念描述1.1 I/O简介I/O即输入输出,是计算机与外界世界的一个借口。IO操作的实际主题是操作系统。在jav...

2019-10-07 09:32:49 118

转载 UML类图(Class Diagram)中类与类之间的关系及表示方式

类之间大体分为5种关系: 1,依赖关系(Dependency)单向,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类,是一种“use a”关系如果A依赖于B,则B表现为A的局部变量,方法参数,静态方法调用等public class Person { public void doSom...

2019-09-29 15:00:34 580

转载 同步 异步与阻塞 非阻塞

一、阻塞和非阻塞从简单的开始,我们以经典的读取文件的模型举例。(对操作系统而言,所有的输入输出设备都被抽象成文件。)在发起读取文件的请求时,应用层会调用系统内核的I/O接口。如果应用层调用的是阻塞型I/O,那么在调用之后,应用层即刻被挂起,一直出于等待数据返回的状态,直到系统内核从磁盘读取完数据并返回给应用层,应用层才用获得的数据进行接下来的其他操作。如果应用层调用的是非阻塞I/O,那么调用...

2019-09-26 16:26:44 82

转载 Hermes——跨进程通信(IPC)框架,使用介绍

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本...

2019-09-25 20:05:29 1465

转载 EventBus源码分析

https://www.jianshu.com/p/d9516884dbd4EventBus 原理解析72018.04.27 16:59:42字数 3183阅读 15524EventBus 是一款在 Android 开发中使用的发布/订阅事件总线框架,基于观察者模式,将事件的接收者和发送者分开,简化了组件之间的通信,使用简单、效率高、体积小!下边是官方的 EventBus 原理图:...

2019-09-25 17:27:43 176

转载 常见的加密算法

前言数字签名、信息加密 是前后端开发都经常需要使用到的技术,应用场景包括了用户登入、交易、信息通讯、oauth 等等,不同的应用场景...

2019-09-25 09:21:17 175

转载 快速开发第一个SpringBoot应用

通过笔者这段实践SpringBoot的学习,发现自从使用了SpringBoot后,就再也回不去SpringMVC了,因为相比于SpringMVC,SpringBoot真是太高效率了。下面我们看看它效率到底高在哪里?在这里我选择在官网上快速搭建一个web应用,并导入到eclipse。首先访问https://spring.io/projects/spring-bo...

2019-09-23 19:26:00 85

转载 zookeeper集群搭建

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

2019-09-23 18:23:54 87

转载 Intellij idea中使用SLF4J+log4j做日志记录

Intellij idea中使用SLF4J+log4j做日志记录一、  简介SLF4J (Simple Logging Facade for Java) 不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。实际上,SLF4J所提供的核心API是一些接口以及一个Lo...

2019-09-16 18:56:09 681 1

转载 mqtt系列文章 转

https://www.cnblogs.com/yudar/category/706792.html

2019-09-16 16:53:43 101

转载 java线程状态

JDK源码中,线程有6中状态,分别是NEW、RUNNABLE、BLOCKED、WAITING、TIME_WAITING、TERMINATED状态转换关系参考网友的总结:https://www.cnblogs.com/GooPolaris/p/8079490.html...

2019-08-21 13:01:48 69

转载 Java 8 新特性

一、Java 8 Lambda 表达式Lambda 表达式,也可称为闭包,它是推动 J...

2019-08-07 14:31:52 197

转载 转:// java Queue中 remove/poll, add/offer, element/peek区别

这里简单对其重复的方法做点简单的区分。offer,add区别:一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。这时新的 offer 方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchecked 异常,而只是得到由 offer() 返回的 false。poll,remove区别:remove() 和 poll() 方法都是从队列中删除第一...

2019-08-06 14:46:03 95

转载 基于 Binder 的跨进程通信以及 Service(二):Java 层

转://https://blog.csdn.net/zsl_oo7/article/details/72084678同进程使用Service(一)比如,你做了一个音乐播放 app,里面有一个 MusicService 负责后台播放音乐,对外提供 play(),pause() 的接口你在一个 Activity 里想调用这个 Service 的 play(),怎么搞?必须在这个 Activ...

2019-07-08 15:06:22 193

转载 android bundle总结

Android Bundle总结1 Bundle介绍Bundle主要用于传递数据;它保存的数据,是以key-value(键值对)的形式存在的。 我们经常使用Bundle在Activity之间传递数据,传递的数据可以是boolean、byte、int、long、float、double、string等基本类型或它们对应的数组,也可以是对象或对象数组。当Bundle传递的是对象或对象...

2019-07-02 14:34:10 162

转载 Charles 抓包使用教程

转://https://www.cnblogs.com/mawenqiangios/p/8270238.html Charles 抓包使用教程 charles使用教程将 Charles 设置成系统代理Charles 主界面介绍过滤网络请求截取 iPhone 上的网络封包截取 Https 通讯信息模拟慢速网络修改网络请求内容给服务器做压力测试...

2019-06-20 06:20:27 141

转载 转// Markdown公式、特殊字符、上下标、求和/积分、分式/根式、字体

转://https://blog.csdn.net/weixin_42546496/article/details/881150951. 公式标记Markdown两种输入公式的方法:一是行内公式(inline),用一对美元符号“$”包裹。二是整行公式(displayed),用一对紧挨的两个美元符号“ $$ ”包裹。这是一个行内公式:(W1−W2)x+b1−b2=0(W1−W2)x+b1−...

2019-06-06 14:39:56 1006

转载 辗转相除算法原理 最大公约数

转 辗转相除算法原理 2015年07月31日 10:07:42 圆圆的汤汤圆圆 阅读数:3979 ...

2019-05-10 13:58:09 2011

原创 Parcelable序列化

Android序列化对象主要有两种方法,实现Serializable接口、或者实现Parcelable接口。实现Serializable接口是 Java SE本身就支持的,而Parcelable是Android特有的功能,效率比实现Serializable接口高,而且还可以用在IPC中。实现 Serializable接口非常简单,声明一下就可以了,而实现Parcelable接口稍微复杂一些,但效率...

2019-04-25 13:53:44 378

转载 Android Camera预览时输出的帧率控制

转:// https://blog.csdn.net/twoconk/article/details/52220338如果使用MediaCodec硬编码H264,可以使用下面的方法控制编码输出的帧率: MediaFormat mediaFormat = MediaFormat.createVideoFormat("video/avc", width, height); ...

2019-04-24 16:01:01 5769 1

原创 MySql安装配置

一、下载官网地址: https://dev.mysql.com/downloads/mysql/选择:macOS 10.14 (x86, 64-bit), Compressed TAR Archive下载后,得到一个131.9m的压缩包 mysql-8.0.13-macos10.14-x86_64.tar.gz,将其解压到/usr/local/下,并重命名为mysql (即:最后的完整目录应...

2019-04-22 20:19:02 1317

转载 Surface、SurfaceView、SurfaceHolder及SurfaceHolder.Callback之间的关系

转:// https://blog.csdn.net/pathuang68/article/details/7351317Surface、SurfaceView、SurfaceHolder及SurfaceHolder.Callback之间的关系一、SurfaceSurface就是“表面”的意思。在SDK的文档中,对Surface的描述是这样的:“Handle onto a raw buffe...

2019-04-18 18:27:23 114

原创 Android Handler浅析

android Handler机制1、什么是handlerAndroid提供更新UI的一套机制,也是一套消息处理机制,可以发送消息2、为什么要用handlerAndroid提供的一套更新UI,消息传递机制,开发者要符合该机制才能更新UI3、Handler用法sendMessagesendMessage(Long delay)postDelayed(Runnable r, Long ...

2019-04-17 13:03:45 194

转载 java ThreadLoal分析

转: https://blog.csdn.net/qq_23315711/article/details/78642171想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。一.对T...

2019-04-16 16:01:22 104

转载 转:// Android Studio上使用OpenCV-android-sdk

在Android Studio上使用OpenCV:1、进入OpenCV官网(不用翻墙):【https://opencv.org/】:2、选择RELEASES,可以看见各个版本,根据你的需求下载,这里我选择最新版3.4.0,点击Android pack进入下载页面:3、下载完成后解压,我们主要用到sdk文件夹:4、新建一个空项目,然后Android Studio菜单-->File--...

2019-04-12 17:23:16 175

原创 Nodejs express框架实现文件上传

1、使用Express、Nodejs服务器上传文件时出现Unexpected field,参考https://blog.csdn.net/qq_37540004/article/details/60963039使用var multipart = require(‘connect-multiparty’); //在处理模块中引入第三方解析模块var multipartMiddleware = ...

2019-03-07 19:37:21 565

转载 Android7.1 Presentation双屏异显 DEMO 样例

转自 https://blog.csdn.net/fu_kevin0606/article/details/79420621https://blog.csdn.net/fishtosky/article/details/47165573 绪论&nbsp; &nbsp; &nbsp; &nbsp;随着用户的需求增多,特别是对于一些Android平板电脑以及其他的一...

2019-03-05 16:29:14 8670 2

转载 Android SparseArray分析

转https://blog.csdn.net/woshizisezise/article/details/79361458 SparseArray也许你没听过,那正好今天就来学习一下咯,这也是Android官方推荐使用的,所以我们需要了解一下他的优势和劣势在哪些地方。首先SparseArray用来和HashMap做比较,在安卓项目中,你新建一个HashMap对象,注意下面会有下划线,里面...

2019-03-05 13:48:01 183

转载 URI详解

转 https://blog.csdn.net/harvic880925/article/details/44679239 前言:依然没有前言……相关博客:1、《Uri详解之——Uri结构与代码提取》2、《Uri详解之二——通过自定义Uri外部启动APP与Notification启动》上几篇给大家讲了ContentProvider,里面有用到Uri,可能很多同学对...

2019-02-21 13:54:37 480

转载 android 系统架构

转:https://www.cnblogs.com/xiaoluo501395377/p/3389411.html Android系统架构-----Android的系统体系架构 一、Android的系统体系结构在入门了一个简单的Android的Hello World以后,我们首先来看一下我们Android的整体系统架构图:这个就是我们Android的...

2019-01-31 09:50:11 118

原创 排序算法

一 冒泡排序相邻比较大的数往后冒,第一轮将最大的数放置数组末端,第二轮将倒数第二大的数放置倒数第二位置,以此类推,总共n轮排序完成所有排序过程。java代码实现如下:private static int[] array = new int[]{9, 3, 5, 1, 10, 80, 2, 1}; public static void main(String args[]) { ...

2019-01-28 22:05:13 109

原创 Socket网络编程

1、InetAddress 类InetAddress 用于获取主机网络参数信息,包括IP地址、主机名及端口等常用信息2、URL 统一资源定位符URL baidu = new URL(“http://www.baidu.com”);可以获取主机的协议,主机名,端口,文件路径,相对路径等等相关信息示例代码:[URL url = new URL(“http://www.baidu.com...

2019-01-17 00:10:27 106

转载 单例模式常用写法

  单例模式是最常用到的设计模式之一,熟悉设计模式的朋友对单例模式都不会陌生。一般介绍单例模式的书籍都会提到 饿汉式 和 懒汉式 这两种实现方式。但是除了这两种方式,本文还会介绍其他几种实现单例的方式,让我们来一起看看吧。&amp;nbsp;简介单例模式是一种常用的软件设计模式,其定义是单例对象的类只能允许一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的...

2019-01-03 12:49:52 195

转载 一道面试题搞懂JVM类加载机制

有这样一道面试题:class Singleton{ private static Singleton singleton = new Singleton(); public static int value1; public static int value2 = 0; private Singleton(){ ...

2019-01-03 12:47:08 167

空空如也

空空如也

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

TA关注的人

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